Данный пример демонстрирует как с помощью статического метода «mouse_event» из системной библиотеки «user32.dll», произвести программное перемещение курсора и выполнение двойного клика левой клавишей мыши по новому расположению.
Создайте проект Windows Form в Microsoft Visual Studio и добавьте в конструкторе главной формы из панели элементов, элемент управления «Button1». Сделайте двойной клик левой клавишей мыши по добавленному компоненту. Вы перейдете в автоматически созданный метод «button1_Click» события «Click». Добавьте в него приведенный ниже код, перемещающий курсор мыши в указанные координаты (X = 30, Y = 30) и выполняющий двойной клик левой клавишей мыши по новому положению.
Создайте проект Windows Form в Microsoft Visual Studio и добавьте в конструкторе главной формы из панели элементов, элемент управления «Button1». Сделайте двойной клик левой клавишей мыши по добавленному компоненту. Вы перейдете в автоматически созданный метод «button1_Click» события «Click». Добавьте в него приведенный ниже код, перемещающий курсор мыши в указанные координаты (X = 30, Y = 30) и выполняющий двойной клик левой клавишей мыши по новому положению.
//Координаты на экране:
int X = 30;
int Y = 30;
//Перемещение курсора на указанные координаты
mouse_event(MOUSEEVENTF_ABSOLUTE | MOUSEEVENTF_MOVE,
System.Windows.Forms.SystemInformation.PrimaryMonitorSize.Width,
System.Windows.Forms.SystemInformation.PrimaryMonitorSize.Height, X, Y);
//Выполнение первого клика левой клавишей мыши
mouse_event(MOUSEEVENTF_ABSOLUTE | MOUSEEVENTF_LEFTDOWN | MOUSEEVENTF_LEFTUP, X, Y, 0, 0);
//Выполнение второго клика левой клавишей мыши
mouse_event(MOUSEEVENTF_ABSOLUTE | MOUSEEVENTF_LEFTDOWN | MOUSEEVENTF_LEFTUP, X, Y, 0, 0);Добавьте в листинг главной формы константы и статический метод «mouse_event».[System.Runtime.InteropServices.DllImport("user32.dll",
CharSet = System.Runtime.InteropServices.CharSet.Auto,
CallingConvention =
System.Runtime.InteropServices.CallingConvention.StdCall)]
public static extern void mouse_event(uint dwFlags,
int dx,
int dy,
int dwData,
int dwExtraInfo);
//Нормированные абсолютные координаты
private const int MOUSEEVENTF_ABSOLUTE = 0x8000;
//Нажатие на левую кнопку мыши
private const int MOUSEEVENTF_LEFTDOWN = 0x0002;
//Поднятие левой кнопки мыши
private const int MOUSEEVENTF_LEFTUP = 0x0004;
//перемещение указателя мыши
private const int MOUSEEVENTF_MOVE = 0x0001; Для проверки работы данного примера, сверните все открытые приложения вашего компьютера и запустите данный пример. При нажатии на главной форме кнопки «Эмулировать», ваш курсор переместиться в левый верхний угол и выполнит двойной клик левой клавишей мыши. Если вы поместите ярлык «Мой компьютер» в левый верхний угол, то после эмуляции у вас откроется окно проводника Windows.Ссылка для скачивания примера: Rusfolder.net



В примерах показывают как минимум центр экрана, а не тупо скопированный код с мсдна
ОтветитьУдалитьЗдравствуйте, не совсем понятно, что вы имеете ввиду. Пожалуйста опишите вашу проблему.
ОтветитьУдалить