Продолжаем интеграцию.
Вернулся к одной заброшенной библиотеке. Потихоньку её переделываю под свежую версию кликера. Попутно добавляя функционал.
Скачать CMTools_v1.4.0В свой проект кидаем папку
CMTools со всем содержимым.
// Подключение
#include "CMTools\CMTools_CMS.cms"
Функции:Можно открыть файл "CMTools\CMTools_CMS.cms" и почитать какие есть функции и что они принимают и отдают.
1.// получить дескриптор окна (hWnd)
CME_WinGetHandle("[CLASS:Notepad++]", "")
2.// получает дескриптор окна рабочего стола (hWnd)
// на данной версии почему-то получает другой hwnd
CME_GetDesktopWindow()
3.// получает PID окна
CME_WinGetProcess("[CLASS:Notepad++]", "")
4.// получает PID окна Clickermann-а
CME_WinGetProcessCM()
5.// получает состояние указанного окна
CME_WinGetState("[CLASS:Notepad++]", "")
6.// Ставит окно поверх всех окон
CME_WinSetOnTop("[CLASS:Notepad++]", 1)
7.// Устанавливает прозрачность окна. 255 = непрозрачно, 0 = прозрачно (невидимое)
CME_WinSetTrans("[CLASS:Notepad++]", 1)
8.// отслеживаем WheelScroll любое движение колеса мыши
CME_MouseWheelScrollEvent(1, 0, 0)
Аргументы вызова:
первый 1/0 - запустить/остановить отслеживание сообщений WheelScroll
второй 0/hwnd можно указать hwnd окна для которого будут отслеживаться сообщения
третий 1/0 блокировать/НЕ блокировать события. Если блокировать, события не будут передаваться окнам.
При событии:
переменной $WheelScrollEvent присваивается значение 1 (сбрасывать в 0 нужно самому, когда это нужно)
9.// отслеживаем WheelScroll UpDown раздельное вверх/вниз вращение колеса мыши
CME_MouseWheelScrollEventUpDown(1, 0, 0)
Аргументы вызова:
Такие же, как и в функции CME_MouseWheelScrollEvent
При событии:
переменной $WheelScrollEvent присваивается значение 2 - вверх или 3 - вниз (сбрасывать в 0 нужно самому, когда это нужно)
10.// отслеживаем MouseMoveEventUpDown перемещение указателя мыши
CME_MouseMoveEvent(1, 0, 0)
Аргументы вызова:
Такие же, как и в функции CME_MouseWheelScrollEvent
При событии:
переменной $MouseMoveEvent присваивается значение 1 (сбрасывать в 0 нужно самому, когда это нужно)
11.// преобразовать область в GREYSCALE
// работает! Подправил по версию 4.13.14 x32 и x64. Осторожнее с большими областями ))
CME_GREYSCALE($x1, $y1, $x2, $y2)
12.// применить к области DramContrast - контраст dramster-а
// работает! Подправил по версию 4.13.14 x32 и x64. Осторожнее с большими областями ))
CME_DRAMCONTRAST($x1, $y1, $x2, $y2, $mid, $k)
http://crapware.aidf.org/forum/index.php?topic=2399.msg15031#msg15031Продолжение следует...Примеры запуска файлов с тестами:Test_Windows.pngTest_MouseEvent.cmsTest_Buffer.cmsOriginal
Greyscale
Dram-Contrast 147, 25
Dram-Contrast 160, 255