Какой правильный способ программно моделировать правой кнопкой мыши (вниз и вверх) в центре экрана в ОС Windows, не влияя на физическую мышь? Он не должен зависеть от окна, а «Sendmessage» или «postmessage»-просто отправить простой щелкну правой кнопкой мыши и щелкнуть правой кнопкой мыши в центре экрана, независимо от того, что там. Решение должно избежать перемещения курсора или использования «SendInput» для имитации кликов в текущем месте мыши. Создание поддельного спряжения через развитие на уровне ядра единственный подход, или есть лучший метод в C или C#?#include
void simulate_right_click_at_center() {
int screenWidth = GetSystemMetrics(SM_CXSCREEN);
int screenHeight = GetSystemMetrics(SM_CYSCREEN);
int centerX = screenWidth / 2;
int centerY = screenHeight / 2;
POINT currentPos;
GetCursorPos(¤tPos);
INPUT input[2] = {0};
input[0].type = INPUT_MOUSE;
input[0].mi.dwFlags = MOUSEEVENTF_RIGHTDOWN;
input[0].mi.dx = centerX * (65536 / screenWidth);
input[0].mi.dy = centerY * (65536 / screenHeight);
input[1].type = INPUT_MOUSE;
input[1].mi.dwFlags = MOUSEEVENTF_RIGHTUP;
input[1].mi.dx = centerX * (65536 / screenWidth);
input[1].mi.dy = centerY * (65536 / screenHeight);
SendInput(2, input, sizeof(INPUT));
SetCursorPos(currentPos.x, currentPos.y);
}
int main() {
simulate_right_click_at_center();
return 0;
}
Подробнее здесь: https://stackoverflow.com/questions/797 ... e-physical
Какой правильный способ имитировать щелчок мыши, не влияя на физическую мышь в Windows? ⇐ C#
Место общения программистов C#
1754931300
Anonymous
Какой правильный способ программно моделировать правой кнопкой мыши (вниз и вверх) в центре экрана в ОС Windows, не влияя на физическую мышь? Он не должен зависеть от окна, а «Sendmessage» или «postmessage»-просто отправить простой щелкну правой кнопкой мыши и щелкнуть правой кнопкой мыши в центре экрана, независимо от того, что там. Решение должно избежать перемещения курсора или использования «SendInput» для имитации кликов в текущем месте мыши. Создание поддельного спряжения через развитие на уровне ядра единственный подход, или есть лучший метод в C или C#?#include
void simulate_right_click_at_center() {
int screenWidth = GetSystemMetrics(SM_CXSCREEN);
int screenHeight = GetSystemMetrics(SM_CYSCREEN);
int centerX = screenWidth / 2;
int centerY = screenHeight / 2;
POINT currentPos;
GetCursorPos(¤tPos);
INPUT input[2] = {0};
input[0].type = INPUT_MOUSE;
input[0].mi.dwFlags = MOUSEEVENTF_RIGHTDOWN;
input[0].mi.dx = centerX * (65536 / screenWidth);
input[0].mi.dy = centerY * (65536 / screenHeight);
input[1].type = INPUT_MOUSE;
input[1].mi.dwFlags = MOUSEEVENTF_RIGHTUP;
input[1].mi.dx = centerX * (65536 / screenWidth);
input[1].mi.dy = centerY * (65536 / screenHeight);
SendInput(2, input, sizeof(INPUT));
SetCursorPos(currentPos.x, currentPos.y);
}
int main() {
simulate_right_click_at_center();
return 0;
}
Подробнее здесь: [url]https://stackoverflow.com/questions/79732295/what-s-the-correct-way-to-simulate-a-mouse-click-without-affecting-the-physical[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия