Dernière mise à jour le 19/03/16

Présentation


Clic_Souris_001

La programmation qui va suivre permet de simuler un clic gauche, ainsi que le clic droit. Vous pouvez récupérer ce petite programme à condition que vous ayez le Framework.Net d’installer sur votre ordinateur. Je vous laisse vous joindre sur ce lien Logiciels . La programmation est basé sur la Dll (“user32.dll”), et nous verrons avec le programme ci-dessous ce que C# peut faire par simulation.

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)

namespace Clic_Souris_001
{
    public partial class Form1 : Form
    {
        const uint MOUSEEVENTF_ABSOLUTE = 0x8000;
        const uint MOUSEEVENTF_LEFTDOWN = 0x0002;
        const uint MOUSEEVENTF_LEFTUP = 0x0004;
        const uint MOUSEEVENTF_MIDDLEDOWN = 0x0020;
        const uint MOUSEEVENTF_MIDDLEUP = 0x0040;
        const uint MOUSEEVENTF_MOVE = 0x0001;
        const uint MOUSEEVENTF_RIGHTDOWN = 0x0008;
        const uint MOUSEEVENTF_RIGHTUP = 0x0010;
        const uint MOUSEEVENTF_XDOWN = 0x0080;
        const uint MOUSEEVENTF_XUP = 0x0100;
        const uint MOUSEEVENTF_WHEEL = 0x0800;
        const uint MOUSEEVENTF_HWHEEL = 0x01000;

        [DllImport("user32.dll")]
        private static extern void mouse_event(uint dwFlags, uint dx, uint dy, uint dwData, int dwExtraInfo);

        public Form1()
        {
            InitializeComponent();
        }

        private void Gauche_Click(object sender, EventArgs e)
        {
            Thread.Sleep(5000); //dans 5 sec le clic
            mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0); // On simule le bouton gauche enfoncé
            Thread.Sleep(100); // 100 ms après
            mouse_event(MOUSEEVENTF_LEFTUP, 0, 0, 0, 0); // On simule le relâchement du bouton gauche
        }

        private void Droit_Click(object sender, EventArgs e)
        {
            Thread.Sleep(5000); //dans 5 sec le clic
            mouse_event(MOUSEEVENTF_RIGHTDOWN, 0, 0, 0, 0); // On simule le bouton droit enfoncé
            Thread.Sleep(100); // 100 ms après
            mouse_event(MOUSEEVENTF_RIGHTUP, 0, 0, 0, 0); // On simule le relâchement du bouton droit
        }
    }
}

Test avec le fichier (.exe) à télécharger Simulation clic souris