Dernière mise à jour le 19/03/16
Présentation
La programmation qui va suivre permet de simuler quelque touches du clavier azerty. La programmation est basé sur la Dll (« user32.dll »).
Programme en C#
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Runtime.InteropServices; // on active le Runtime
using System.Threading; // permet d'utiliser le Thread.Sleep(ms)
using System.Diagnostics; // on active pour permettre d'utiliser la fonction Process.Start pour ouvrir application
namespace Touches_Clavier_001
{
public partial class Form1 : Form
{
const int KEYEVENTF_KEYUP = 0x0002; //Evenement du relachement de la touche active
const int VK_CONTROL = 0x11; //simuler touche CTRL
const int VK_SHIFT = 0x10; // simuler touche SHIFT
const int VK_RETURN = 0x0D; // simuler touche ENTRER
const int J = 0x4A; //code de la touche J
[DllImport("user32.dll", SetLastError = true)]
static extern void keybd_event(byte bVk, byte bScan, int dwFlags, int dwExtraInfo);
public Form1()
{
InitializeComponent();
}
private void BlocNote_Click(object sender, EventArgs e)
{
Process.Start(@"C:\Users\Julien\Desktop\test.txt"); // on ouvre le bloc note situé sur le bureau
Thread.Sleep(5000); // 5 secs après
SendKeys.Send("Bienvenue à tous sur mon site DJelectro71.com"); // écriture dans le bloc note
Thread.Sleep(5000); // 5 secs après
// Ci-dessous écriture de "J" et "j"
keybd_event(VK_RETURN, 0, 0, 0); // On active la touche ENTRER du clavier
Thread.Sleep(1000); // 1 sec après
keybd_event(VK_RETURN, 0, KEYEVENTF_KEYUP, 0); // On relache la touche ENTRER du clavier
keybd_event(VK_SHIFT, 0, 0, 0); // On active la touche SHIFT du clavier
Thread.Sleep(1000); // 1 sec après
keybd_event(J, 0, 0, 0); // On active la touche "J"
keybd_event(VK_SHIFT, J, KEYEVENTF_KEYUP, 0); // On relache la touche SHIFT et la touche J
keybd_event(J, 0, 0, 0); // On active la touche "j" de nouveau
Thread.Sleep(5000); // 5 secs après
keybd_event(0, J, KEYEVENTF_KEYUP, 0); // On relache la touche "j"
}
}
}
|