Модераторы: feodorv, GremlinProg, xvr, Fixin
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> rundll32 команды управления мышью 
:(
    Опции темы
x2z7yy
Дата 8.4.2011, 12:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 8.4.2011

Репутация: нет
Всего: нет



Есть вот такие команды:
rundll32 user32, SetCursorPos
rundll32 user32, mouse_event
они выполняют перевод курсора в нижний-праввый угол экрана и щелчок мышью соответственно, если ввести их в "Выполнить..."

Есть ли команда(из этой же серии smile ) которая отвечает за прокрутку колесика мыши? може быть из других библиотек, но вроде в должна быть в user32, т.к. именно она отвечает за интерактивные действия пользователя 

П.С. пишу в этой теме т.к. вроде это про winAPI

Это сообщение отредактировал(а) x2z7yy - 8.4.2011, 12:44
PM MAIL   Вверх
Dem_max
Дата 8.4.2011, 16:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1780
Регистрация: 12.4.2007

Репутация: 16
Всего: 39



да mouse_event с параметром MOUSEEVENTF_WHEEL
или SendInput с MOUSEEVENTF_WHEEL


--------------------
Американские программисты долго не могли понять, почему русские при зависании Windоws всё время повторяют "Твой зайка написал" ("Yоur bunnу wrоte")
PM MAIL   Вверх
xvr
Дата 10.4.2011, 09:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 7046
Регистрация: 28.8.2007
Где: Дублин, Ирландия

Репутация: 40
Всего: 223



Цитата(x2z7yy @  8.4.2011,  12:43 Найти цитируемый пост)
они выполняют перевод курсора в нижний-праввый угол экрана и щелчок мышью соответственно, если ввести их в "Выполнить..."

Или повесят машину, если не повезет  smile 

rundll32 запускает функции со вполне конкретными параметрами ( http://support.microsoft.com/kb/164787 ), и параметры эти никаким боком не совпадают ни с параметрами SetCursorPos и с параметрами mouse_event.

Так что такое использование rundll32 не что иное, как грязный хак  smile 
PM MAIL   Вверх
x2z7yy
Дата 11.4.2011, 07:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 8.4.2011

Репутация: нет
Всего: нет



Цитата(Dem_max @  8.4.2011,  16:07 Найти цитируемый пост)
да mouse_event с параметром MOUSEEVENTF_WHEEL
или SendInput с MOUSEEVENTF_WHEEL 


подскажите, пожалуйста, как полностью написать с параметрами, которую можно ввести в командную строку

rundll32 user32,mouse_event MOUSEEVENTF_WHEEL - так просто щелкает мышью
rundll32 user32,mouse_event(MOUSEEVENTF_WHEEL) - так ошибка
PM MAIL   Вверх
bems
Дата 11.4.2011, 08:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 3400
Регистрация: 5.1.2006

Репутация: 2
Всего: 88



rundll32 вообще не предназначена для вызова этих функций. То что это работает или случайность, или защита от дурака. Лучше бы тебе перестать исповедовать культ карго и написать для вызова этих функций из командной строки несложную программу.


--------------------
Обижено школьников: 8
PM MAIL   Вверх
Dem_max
Дата 11.4.2011, 08:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1780
Регистрация: 12.4.2007

Репутация: 16
Всего: 39



Цитата(x2z7yy @ 11.4.2011,  07:12)
Цитата(Dem_max @  8.4.2011,  16:07 Найти цитируемый пост)
да mouse_event с параметром MOUSEEVENTF_WHEEL
или SendInput с MOUSEEVENTF_WHEEL 


подскажите, пожалуйста, как полностью написать с параметрами, которую можно ввести в командную строку

rundll32 user32,mouse_event MOUSEEVENTF_WHEEL - так просто щелкает мышью
rundll32 user32,mouse_event(MOUSEEVENTF_WHEEL) - так ошибка

Какой то у тебя код корявый
вот так должен писаться 
Код

mouse_event(MOUSEEVENTF_WHEEL, 0, 0, -120, 0);
mouse_event(MOUSEEVENTF_WHEEL, 0, 0,  120, 0);



--------------------
Американские программисты долго не могли понять, почему русские при зависании Windоws всё время повторяют "Твой зайка написал" ("Yоur bunnу wrоte")
PM MAIL   Вверх
x2z7yy
Дата 11.4.2011, 09:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 8.4.2011

Репутация: нет
Всего: нет



Цитата(Dem_max @  11.4.2011,  08:19 Найти цитируемый пост)
Какой то у тебя код корявый
вот так должен писаться 
mouse_event(MOUSEEVENTF_WHEEL, 0, 0, -120, 0);
mouse_event(MOUSEEVENTF_WHEEL, 0, 0,  120, 0);


А не могли бы вы написать полностью от самого include(т.к. я не очень силен в системном программировании). Мне нужно чтобы при исполнении программы не было никаких окон, а просто провернулось колесико мыши.

PM MAIL   Вверх
Dem_max
Дата 11.4.2011, 10:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1780
Регистрация: 12.4.2007

Репутация: 16
Всего: 39



Код

#include <windows.h>

WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdLine, int nCmdShow)
{
    mouse_event(MOUSEEVENTF_WHEEL, 0, 0,  120, 0);
    return 0;
}



--------------------
Американские программисты долго не могли понять, почему русские при зависании Windоws всё время повторяют "Твой зайка написал" ("Yоur bunnу wrоte")
PM MAIL   Вверх
x2z7yy
Дата 13.4.2011, 11:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 8.4.2011

Репутация: нет
Всего: нет



Dem_max, большое спасибо за помощь.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Системное программирование и WinAPI"
Fixin
GremlinProg
xvr
feodorv
  • Большое количество информации и примеров с использованием функций WinAPI можно найти в MSDN
  • Описание сообщений, уведомлений и примеров с использованием компонент WinAPI (BUTTON, EDIT, STATIC, и т.п.), можно найти в MSDN Control Library
  • Непосредственно, перед созданием новой темы, проверьте заголовок и удостоверьтесь, что он отражает суть обсуждения.
  • После заполнения поля "Название темы", обратите внимание на наличие и содержание панели "А здесь смотрели?", возможно Ваш вопрос уже был решен.
  • Приводите часть кода, в которой предположительно находится проблема или ошибка.
  • Если указываете код, пользуйтесь тегами [code][/code], или их кнопочными аналогами.
  • Если вопрос решен, воспользуйтесь соответствующей ссылкой, расположенной напротив названия темы.
  • Один топик - один вопрос!
  • Перед тем как создать тему - прочтите это .

На данный раздел распространяются Правила форума и Правила раздела С++:Общие вопросы .


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Chipset, Step, Fixin, GremlinProg, xvr. feodorv.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Системное программирование и WinAPI | Следующая тема »


 




[ Время генерации скрипта: 0.0492 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.