powered by simpleCommunicator - 2.0.54     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Имитация нажатий. имитация сигнала
25 сообщений из 277, страница 5 из 12
Имитация нажатий. имитация сигнала
    #37594431
я пробовал только на в7сп1 на хр я не пробовал игру
...
Рейтинг: 0 / 0
Имитация нажатий. имитация сигнала
    #37595615
Фотография BelowZero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
сложно сходу вникнуть в длинный код.
аппаратурапервый пример просто устанавливает курсор мыши в заданную позицию objProtectSample.SetCursorPosSampleV01? да, он, я так понял, на основе чистого SetCursorPos без каких-либо манипуляций. понятное дело, рапой прога кикается
аппаратуравторой пример двигает курсор мыши десять раз objProtectSample.SetCursorPosSampleV02? это первый пример двигал мышь несколько раз. а второй пример у меня не делал вообще ничего
аппаратуратретий пример нажимает клавишу "1" на клавиатуре
четвертый пример устанавливает курсор мыши в заданную позицию и кликает в этой позиции О_о у меня только 2 примера))) я набрасал с нуля черновой вариант для SetCursorPos, он оказался ровно в 100 раз меньше по объёму, но и работает совсем по-другому, а хотелось бы как у вас. SetCursorPos и правда работает. после этого взбунтовался геймгуард и теперь игра не запускается на всех 3 компах) либо проблема у самой игры, либо геймгуард решил забанить мой айпи, который ещё у нескольких сотен человек в городе)
...
Рейтинг: 0 / 0
Имитация нажатий. имитация сигнала
    #37595633
авторО_о у меня только 2 примера


Public Sub TestV01()
Dim objProtectSample As ProtectSampleV01C


Set objProtectSample = New ProtectSampleV01C


' objProtectSample.LoadedFunctionListUse = False
' objProtectSample.SetCursorPosSampleV01
' objProtectSample.SetCursorPosSampleV02
'
' objProtectSample.LoadedFunctionListUse = True
' objProtectSample.SetCursorPosSampleV01
' objProtectSample.SetCursorPosSampleV02
'
' objProtectSample.LoadedFunctionListUse = False
' objProtectSample.SendInputSampleV01
' objProtectSample.SendInputSampleV02
'
' objProtectSample.LoadedFunctionListUse = True
' objProtectSample.SendInputSampleV01
' objProtectSample.SendInputSampleV02
End Sub
...
Рейтинг: 0 / 0
Имитация нажатий. имитация сигнала
    #37595637
Фотография BelowZero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
аппаратура,

вы правы, проверил keybd_event в обход системной dll - не работает не только в окне игры, но в блокноте при включённой игре. видимо, эти функции перехватываются не на dllке, а в ядре
...
Рейтинг: 0 / 0
Имитация нажатий. имитация сигнала
    #37595644
Фотография BelowZero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
аппаратура' objProtectSample.LoadedFunctionListUse = False
' objProtectSample.SetCursorPosSampleV01
' objProtectSample.SetCursorPosSampleV02
это один пример скопированный 3 раза) '
objProtectSample.LoadedFunctionListUse = True даёт ошибку в любом случае
...
Рейтинг: 0 / 0
Имитация нажатий. имитация сигнала
    #37595645
авторвзбунтовался геймгуард


а как именно?

гейгард сразу стал ругаться или через какое-то время?
я в игру не входил тк не заводил логин пароль а только по логин скрину ездил курсором ничего не ругался
...
Рейтинг: 0 / 0
Имитация нажатий. имитация сигнала
    #37595651
авторэто один пример скопированный 3 раза) '
objProtectSample.LoadedFunctionListUse = True даёт ошибку в любом случае


не понял
почему один
почему дает ошибку когда true
когда работает

я вышеписал что это восемь небольших тестов
' objProtectSample.LoadedFunctionListUse = False
' objProtectSample.SetCursorPosSampleV01
' objProtectSample.SetCursorPosSampleV02
я считаю их как два
1
objProtectSample.LoadedFunctionListUse = False
objProtectSample.SetCursorPosSampleV01
' objProtectSample.SetCursorPosSampleV02
2
objProtectSample.LoadedFunctionListUse = False
' objProtectSample.SetCursorPosSampleV01
objProtectSample.SetCursorPosSampleV02

ну и остальные аналогично

сначала надо их прогнать без игры и сравнить поведение с игрой
...
Рейтинг: 0 / 0
Имитация нажатий. имитация сигнала
    #37595674
этот двигает один раз
Public Sub SetCursorPosSampleV01()
Dim lngX As Long
Dim lngY As Long


Do While True
FunctionListLoadIfUsed

FunctionSelectorCreate

lngX = 400
lngY = 200
SetCursorPosWithCheck lngX, lngY

FunctionListUnloadIfUsed


Exit Do
Loop
End Sub

а этот 10
Public Sub SetCursorPosSampleV02()
Dim lngX As Long
Dim lngY As Long
Dim lngCount As Long
Dim lngInterval As Long


Do While True
FunctionListLoadIfUsed

FunctionSelectorCreate

lngX = 400
lngY = 200
lngCount = 10
lngInterval = 500
SetCursorPosInLoopWithCheck lngX, lngY, lngCount, lngInterval

FunctionListUnloadIfUsed


Exit Do
Loop
End Sub
...
Рейтинг: 0 / 0
Имитация нажатий. имитация сигнала
    #37595678
Фотография BelowZero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
аппаратура,

начали выходить ошибки геймгуарда. я тоже не входил. удалил папку(причём даже пустая папка при выключенной игре не удалялась после перезагрузки, это настораживает), продолжил эксперименты. выводы:
1) до сих пор не могу скомпилировать проект по вашему методу
2) найден другой способ обхода защиты, очень простой, но он работает только на XP и при закрытии всегда завершается с ошибкой)
3) можно перемещать мышь по окну игры(это было возможно и простыми средствами, т.е. дать фокус своей программе, переместить мышь в нужное место, дать фокус игре, поэтому разработчики игры и не заморачивались над блокировкой перемещения, это бесполезно)
4) имитации нажатий перехватываются не в Dll, а ниже.
первый пример просто устанавливает курсор мыши в заданную позицию
второй пример двигает курсор мыши десять раз
да, но при objProtectSample.LoadedFunctionListUse = True ошибка, почему - хз
...
Рейтинг: 0 / 0
Имитация нажатий. имитация сигнала
    #37595696
автор4) имитации нажатий перехватываются не в Dll, а ниже


согласен

автор3) можно перемещать мышь по окну игры(это было возможно и простыми средствами, т.е. дать фокус своей программе, переместить мышь в нужное место, дать фокус игре, поэтому разработчики игры и не заморачивались над блокировкой перемещения, это бесполезно)


странно неужели я не заметил мне казалось что мышь и двигаться не будет при вызове SetCursorPos
я поэтому и написал этот перехват тк без него не работало
надо будет посмотреть еще раз

автор1) до сих пор не могу скомпилировать проект по вашему методу

не понимаю
все должно компилится
надо создать пустой проект бейсика и затащить в него все файлы
после этого скопилить и создать exe или вообще в отладчике бейсика прямо запустить

автор2) найден другой способ обхода защиты, очень простой, но он работает только на XP и при закрытии всегда завершается с ошибкой)


какой?

авторobjProtectSample.LoadedFunctionListUse = True


именно когда
objProtectSample.LoadedFunctionListUse = True
используются подгруженные функции
иначе используются обычные апи функции
специально сделал один флажок чтобы легко переключаться между версиями
...
Рейтинг: 0 / 0
Имитация нажатий. имитация сигнала
    #37595712
Фотография BelowZero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
аппаратуравсе должно компилится кент перформ рекйюрест оперэйшон. попробую поискать ошибку.
аппаратуракакой? я тупо создал свою dll)))))))))))) в итоге код - 1 строчка)))
уже можно создать бота, если попросить сделать то устройство, ссылку на которое вы приводили. только не 1 нажатие в 1.25сек а 10+++ нажатий в секунду. вполне работоспособный бот. но, я думаю, можно докапаться до программного решения. скоро постараюсь привести результаты моих поисков среди драйверов
...
Рейтинг: 0 / 0
Имитация нажатий. имитация сигнала
    #37595737
авторя тупо создал свою dll)))))))))))) в итоге код - 1 строчка)))


очень информативно
и что же это за строчка
и что делать с этой длл


авторуже можно создать бота, если попросить сделать то устройство, ссылку на которое вы приводили. только не 1 нажатие в 1.25сек а 10+++ нажатий в секунду.


требуется 10 нажатий в секунду?
странно человек же так не может быстро жать

авторкент перформ рекйюрест оперэйшон

прога тоже такую ошибку может выдает при выполнении
но при чем здесь компиляция
...
Рейтинг: 0 / 0
Имитация нажатий. имитация сигнала
    #37595761
Фотография BelowZero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
аппаратураочень информативно
и что же это за строчка
и что делать с этой длл удивляет? значит мне первому пришла такая неадекватная мысль, как скопировать user32.dll под именем blablablamo9dllineipet.dll в system32, а потом в объявлении функции
Код: vbnet
1.
2.
Private Declare Function SetCursorPos Lib "blablablamo9dllineipet" _
 (ByVal x As Long, ByVal y As Long) As Long

всё... спокойненько вызываем через свою dll) : 1 строчка:
Код: vbnet
1.
SetCursorPos 300, 300


конечно, ваш вариант мне больше нравится, надо будет вникнуть в код. у моего способа найдены 2 недостатка: при закрытии процедуры прога закрывается крахом(поэтому не запускайте в реэиме отладчика, чтобы не завершить всю среду, а крах ехешника в момент закрытия не так страшно) и мой способ не работал в виндоус7х64(не находилась моя dllка программой)
...
Рейтинг: 0 / 0
Имитация нажатий. имитация сигнала
    #37595775
Фотография BelowZero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
аппаратурапрога тоже такую ошибку может выдает при выполнении
но при чем здесь компиляция сам удивляюсь) под компиляцией я имел ввиду запуск в режиме отладчика либо готового exe
аппаратураребуется 10 нажатий в секунду?
странно человек же так не может быстро жать нужно исходить не из средней скорости нажатий, а максимально возможной. к примеру, я нажимаю клавиши примерно с такой скоростью во время битв + комбинации из клавиш и бот для чата, наверняка реализумые только при помощи экранной клавиатуры, потребуют высокой скорости нажатий.
...
Рейтинг: 0 / 0
Имитация нажатий. имитация сигнала
    #37595812
авторскопировать user32.dll под именем blablablamo9dllineipet.dll в system32


вот слона-то я и не заметил!

ну конечно
а я все эти же действия руками делал в своем примере

чтобы находилась
Lib "blablablamo9dllineipet"
можно прямо путь указать
Lib "c:\folder\blablablamo9dllineipet"

если крэшится то возможно из-за того что библиотека имеет еще и внутренне имя
именно оно используется загрузчиком выгрузчиком

надо найти в бинарном редакторе его и заменить на другое
не знаю сколько этих мест там
но это просто определить
создав две длл с одинаковым кодом но с разными именами
и сравнив их
...
Рейтинг: 0 / 0
Имитация нажатий. имитация сигнала
    #37595828
ну вообщем выводы как я понял такие

1 SetCursorPos работает только если подменить длл
2 можно использовать аппаратный автокликер
3 этого достаточно чтобы реализовать имитацию нажатий на клаву и мышь
4 защита теоретически и я почти уверен что практически все равно пытается проверить что мышь двигается именно человеком например просто сканируя через определенное время позицию и на основании последовательности позиций делает вывод о том двигает ли мышью человек
5 играть в игру невозможно только клавиатурой
6 зато как определить кто нажимает клаву человек и комп мне не приходит в голову
7 защита работает на уровне администратора и поэтому может делать с компом все что захочет
8 в принципе можно мониторить порт usb com ps2 на предмет того идут ли из него сигналы если не идут а мышь двигается то это подозрительно тк похоже на программную имитацию и тогда и драйвер не поможет
...
Рейтинг: 0 / 0
Имитация нажатий. имитация сигнала
    #37595847
Фотография BelowZero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
аппаратурачтобы находилась
Lib "blablablamo9dllineipet"
можно прямо путь указать
Lib "c:\folder\blablablamo9dllineipet" проверил, что-то не рабоатет. аппаратура4 защита теоретически и я почти уверен что практически все равно пытается проверить что мышь двигается именно человеком например просто сканируя через определенное время позицию и на основании последовательности позиций делает вывод о том двигает ли мышью человек эта проверка легко обходится, мысленно уже набрасал будущий код
аппаратура6 зато как определить кто нажимает клаву человек и комп мне не приходит в голову по отслеживанию временных промежутков и последовательности нажатия клавиш. повторюсь, я смогу это легко обойти)
аппаратура8 в принципе можно мониторить порт usb com ps2 на предмет того идут ли из него сигналы если не идут а мышь двигается то это подозрительно тк похоже на программную имитацию и тогда и драйвер не поможет да, возможно. единственный луч надежды - экранная клавиатура, которая работает без свяких физических устройств. т.е. либо драйвер поможет, либо игра намеренно разрешает ЭК имитировать нажатия, тогда нужно будет подделывать ЭК. в любом случаю результат принесёт пользу. я пока что разбираюсь в направлении драйверов. буду сообщать по мере появления полезной инфы
...
Рейтинг: 0 / 0
Имитация нажатий. имитация сигнала
    #37595849
Фотография BelowZero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
аппаратурасоздав две длл с одинаковым кодом но с разными именами
и сравнив их получим две одинаковые по содержанию dll с разными именами) как это поможет, пока что не вкурил)
...
Рейтинг: 0 / 0
Имитация нажатий. имитация сигнала
    #37595869
авторсоздав две длл с одинаковым кодом но с разными именами
и сравнив их


ну просто строка user32 храниться в файле в юникоде или не в юникоде ее в бинарном файле находим поиском и изменяем например на user33 просто вдруг таких строк много найдется тогда не знаю может их все надо тоже изменить
а предложил я создать две разные длл только для того чтобы не искать поиском а просто написать
fc /b user32.dll user33.dll
увидим отличия те такое сравнение двух файлов если нет под рукой специальной проги

авторчтобы находилась
Lib "blablablamo9dllineipet"
можно прямо путь указать
Lib "c:\folder\blablablamo9dllineipet"

очень странно что не работает
ведь бейсик 32 разряда и в 64 он работает все равно как 32 и даже не подозревает что работает под 64
а значит и дллки ищет свои тот же user32 ведь находит а он другой чем х64
но под рукой виндоус 64 нет проверить на себе не могу
...
Рейтинг: 0 / 0
Имитация нажатий. имитация сигнала
    #37595878
Фотография BelowZero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
хм. у меня и под XP не работает
Код: vbnet
1.
2.
Private Declare Function SetCursorPos Lib "C:\1\user327" _
 (ByVal x As Long, ByVal y As Long) As Long

user327.dll лежит в C:\1\
аппаратуранаходим поиском и изменяем например на user33 если получится правильно прописать путь в dll, то менять имя не придётся, а значит проблема с выгрузкой исчезнет. если, конечно, в dll к тому же не прописан путь к system32)))
...
Рейтинг: 0 / 0
Имитация нажатий. имитация сигнала
    #37595903
может расширение dll надо добавить тк у меня на хр все работает
...
Рейтинг: 0 / 0
Имитация нажатий. имитация сигнала
    #37595919
Фотография BelowZero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ошибка оказалась в таймере, туплю немного. проверил BelowZeroпроблема с выгрузкой исчезнет не исчезает. видимо авторв dll к тому же прописан путь к system32 а не только имя dll
...
Рейтинг: 0 / 0
Имитация нажатий. имитация сигнала
    #37595943
да вылетает прога
видать что-то делается при загрузке длл такое что предполагает только на один запуск

сейчас поробую загрузить библиотеку с помощью
LoadLibraryEx(DONT_RESOLVE_DLL_REFERENCES )
может поможет
...
Рейтинг: 0 / 0
Имитация нажатий. имитация сигнала
    #37595970
Фотография BelowZero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
открыл user.32 блокнотом, найдены 2 записи s y s t e m 3 2 путь и ещё что-то. изменял по-разному эти записи. но всё не так просто. при изменении пути dllка просто перестаёт опознаваться как dll.
...
Рейтинг: 0 / 0
Имитация нажатий. имитация сигнала
    #37595994
надо же помогло
те загружаю с помощью

Dim lngModuleHandle as Long

lngModuleHandle = LoadLibraryExWinApi(StrPtr(strModulePath), 0 , WinApiE.DONT_RESOLVE_DLL_REFERENCES)
SetCursorPos
FreeLibrary(lngModuleHandle)
lngModuleHandle = 0

теперь не падает
получается когда установлен флажок DONT_RESOLVE_DLL_REFERENCES система не делает каких инициализаций
...
Рейтинг: 0 / 0
25 сообщений из 277, страница 5 из 12
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Имитация нажатий. имитация сигнала
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]