1 (изменено: hypechel, 2020-09-24 20:35:51)

Тема: AHK: Выполнение команды до определенного момента

Здравствуйте, у меня такая проблема я сделал скрипт, поставил защиту, хоть и слабая но защита! Защита по ключу, то есть мне надо выдать доступ к скрипту через сайт, но не в этом дело, я хочу сделать так чтобы ахк не работал до авторизации по ключу, можно ли как то заблокировать использование кода до его авторизации?

Upd: (я хочу сделать так чтобы человек не мог пользоваться скриптом, точнее чтобы блокировались сочитания клавиш до разрешения в доступе!

2

Re: AHK: Выполнение команды до определенного момента

Мало что понятно, но вы в любом случае при выполнении каких либо функций можете проверить, прошла ли авторизация. Горячие клавиши можно создавать динамически уже после авторизации командой Hotkey.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Skype dmitry_fiveg

3 (изменено: hypechel, 2020-09-24 20:34:27)

Re: AHK: Выполнение команды до определенного момента

teadrinker Попытаюсь объяснить, я поставил на скрипт защиту по ключу, но дело в том что даже если человек не будет иметь ключа он сможет использовать скрипт, т.к там скрипт основан на комбинации клавиш, я просто хочу отключить возможность взаимодествия с скриптом до того момента когда ему напишет "Доступ разрешен"
Вот код:


#NoTrayIcon
strComputer := "."
objWMIService := ComObjGet("winmgmts:{impersonationLevel=impersonate}!\\" . strComputer . "\root\cimv2")
colSettings := objWMIService.ExecQuery("Select * from Win32_OperatingSystem")._NewEnum
While colSettings[objOSItem]
{
    Key := objOSItem.SerialNumber
}
;===========================================================================
URLDownloadToFile, тут моя ссылка!, %a_temp%/d3d9.txt
fileread, read, %a_temp%/d3d9.txt
if read contains %Key%
 goto true
Gui, Font, S16 CBlack Bold, Arial
Gui, Add, Text, x53 y0 w113 h30 , Ваш ключ:
Gui, Font, ,
Gui, Add, Edit, x1 y31 w219 h21 ReadOnly vEdit,
Gui, Add, Button, x35 y55 w153 h27 gClip , Копировать и закрыть
Gui, Add, Button, x35 y85 w153 h27 gVkontakte , Vkontakte
Gui, Show, w221 h115, Key
GuiControl, , Edit, % Key
return
Clip:
Gui, Submit, NoHide
Clipboard := Edit
ExitApp
GuiClose:
ExitApp
true:
msgbox, Доступ разрешён!

4

Re: AHK: Выполнение команды до определенного момента

hypechel пишет:

там скрипт основан на комбинации клавиш

Я не увидел в коде, где там комбинация клавиш. Принцип такой:

...
URLDownloadToFile, тут моя ссылка!, %a_temp%/d3d9.txt
fileread, text, %a_temp%/d3d9.txt
if InStr(text, key)
   MsgBox, Доступ разрешён
else {
   MsgBox, Доступ запрещён
   ExitApp
}
...

Обратите внимание на оформление кода на форуме.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Skype dmitry_fiveg

5 (изменено: hypechel, 2020-09-24 18:50:11)

Re: AHK: Выполнение команды до определенного момента

teadrinker Я просто не хочу сливать сам скрипт, поэтому могу только написать комбинации клавиш: Alt + Numpad1-3; Alt + 5-6

И можете скинуть поправки в коде именно вставить сам в код чтобы я не гадал куда это вставлять после GUI или до GUI и т.д

6

Re: AHK: Выполнение команды до определенного момента

teadrinker пишет:

Горячие клавиши можно создавать динамически уже после авторизации командой Hotkey.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Skype dmitry_fiveg

7

Re: AHK: Выполнение команды до определенного момента

teadrinker Они не будут работать когда юзер скрипта не будет авторизирован? Если да, то можете написать пример?

8

Re: AHK: Выполнение команды до определенного момента

hypechel, добавьте префикс скриптового языка в название темы. Оформите ссылку тегом "URL". Оформите код тегом "code".

9

Re: AHK: Выполнение команды до определенного момента

Перевод справки по команде Hotkey, там примеры есть. Пока команда не выполнена, горячая клавиша назначена не будет.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Skype dmitry_fiveg

10 (изменено: hypechel, 2020-09-24 20:08:12)

Re: AHK: Выполнение команды до определенного момента

teadrinker пишет:

Перевод справки по команде Hotkey, там примеры есть. Пока команда не выполнена, горячая клавиша назначена не будет.

Я смог отключить клавишу, но как ее потом включить после авторизации? Я пишу "Hotkey, !Numpad1, Off"


"Hotkey, !Numpad1, On" но клавиша не включается

11

Re: AHK: Выполнение команды до определенного момента

Вам не надо её включать и отключать. Просто не создавайте её через синтаксис !Numpad1::, а сразу создавайте командой Hotkey после авторизации.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Skype dmitry_fiveg

12 (изменено: hypechel, 2020-09-24 20:22:53)

Re: AHK: Выполнение команды до определенного момента

teadrinker Я не смог найти пример, как правильно это делается. Примера я особо не понял, можете просто дословно расписать правильное включение?

13

Re: AHK: Выполнение команды до определенного момента

Сначала оформление кода исправьте в этом посте, а то меня модератор накажет.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Skype dmitry_fiveg

14

Re: AHK: Выполнение команды до определенного момента

Сделал, теперь можете помочь?

15

Re: AHK: Выполнение команды до определенного момента

; здесь авторизация
; ...
; ....
MsgBox, Доступ разрешён!

Hotkey, !Numpad1, Label, On

; здесь остальной код секции автовыполнения
; ...
; ...
Return

Label:
; здесь код который должен выполняться по горячей клавише
   MsgBox, % A_ThisHotkey
   Return
Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Skype dmitry_fiveg

16

Re: AHK: Выполнение команды до определенного момента

teadrinker пишет:
; здесь авторизация
; ...
; ....
MsgBox, Доступ разрешён!

Hotkey, !Numpad1, Label, On

; здесь остальной код секции автовыполнения
; ...
; ...
Return

Label:
; здесь код который должен выполняться по горячей клавише
   MsgBox, % A_ThisHotkey
   Return

У меня все так ничего и не получается, все равно работает во время авторизации!

17

Re: AHK: Выполнение команды до определенного момента

hypechel

Вверху ставим проверку на 'лицензию', затем создаём окно Gui и заполняем его всем необходимым. Затем ниже делаем проверку и если доступ есть - НАЗНАЧАЕМ клавиши для команд.

Что тут сложного?

18

Re: AHK: Выполнение команды до определенного момента

__Михаил__ пишет:

hypechel

Вверху ставим проверку на 'лицензию', затем создаём окно Gui и заполняем его всем необходимым. Затем ниже делаем проверку и если доступ есть - НАЗНАЧАЕМ клавиши для команд.

Что тут сложного?

Без понятия как это правильно делается, у меня ахк скрипт назначен на то что бы мышка передвигалась по координатам. Но я не понимаю как правильно это сделать чтобы в окне авторизации нажимая комбинацию Alt + Numpad 1 оно не работало!

19

Re: AHK: Выполнение команды до определенного момента

hypechel

Комбинацию Alt + Numpad1 установить при проверке на доступ не судьба?

var = 1 ; Если переменная = 1 - назначаем перехват Alt+Num1.

If var
{
 ToolTip, Кнопка Назначена!
 Hotkey, !Numpad1, Метка, On
 Sleep, 1500
 ToolTip
}
Return


Метка:
ToolTip, Кнопка Alt+Num1 нажата!
Return

20

Re: AHK: Выполнение команды до определенного момента

__Михаил__ пишет:

hypechel

Комбинацию Alt + Numpad1 установить при проверке на доступ не судьба?

var = 1 ; Если переменная = 1 - назначаем перехват Alt+Num1.

If var
{
 ToolTip, Кнопка Назначена!
 Hotkey, !Numpad1, Метка, On
 Sleep, 1500
 ToolTip
}
Return


Метка:
ToolTip, Кнопка Alt+Num1 нажата!
Return

Это надо установить перед кодом или после????

21

Re: AHK: Выполнение команды до определенного момента

hypechel пишет:

У меня все так ничего и не получается, все равно работает во время авторизации!

Установку горячей клавиши с помощью !Numpad1:: нужно удалить.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Skype dmitry_fiveg

22

Re: AHK: Выполнение команды до определенного момента

Как можно вообще через URLDownloadToFile проверять ключ.

23

Re: AHK: Выполнение команды до определенного момента

svoboden

Скрипт определяет уникальные цифры компа, затем ищет их в файле, который скачает. Если цифры есть в коде - разрешает доступ к основным функциям скрипта иначе покажет окно с этими цифрами, которые нужно отправить автору.

24 (изменено: svoboden, 2020-09-27 05:34:04)

Re: AHK: Выполнение команды до определенного момента

Ну я знаю эту защиту, не стоит использовать URLDownloadToFile для проверки ключа.

25

Re: AHK: Выполнение команды до определенного момента

svoboden

А как ещё определить может ли этот компьютер иметь доступ ко всем функциям скрипта?

26 (изменено: svoboden, 2020-09-27 04:24:34)

Re: AHK: Выполнение команды до определенного момента

__Михаил__, много способов существует, можно через http запросы, куда без них.

27

Re: AHK: Выполнение команды до определенного момента

Как вообще на счёт того, чтобы подгружать основные функции только после авторизации?

28 (изменено: Botsy, 2020-10-26 19:11:51)

Re: AHK: Выполнение команды до определенного момента

Если нет защиты от декомпила или прог типо Resource Hacker, то в чем смысл ключа ? если можно просто открыть весь код и изменить его кем угодно и как угодно.

29

Re: AHK: Выполнение команды до определенного момента

Почему нет, исходный код можно зашифровать.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Skype dmitry_fiveg

30 (изменено: Botsy, 2020-10-26 20:23:37)

Re: AHK: Выполнение команды до определенного момента

teadrinker пишет:

Почему нет, исходный код можно зашифровать.

А как это сделать для ahk, мб примеры есть почитать где-нибудь ?

31

Re: AHK: Выполнение команды до определенного момента

AHK_H можно скомпилировать с паролем. Правда «из коробки» он дефолтный, но можно заменить.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Skype dmitry_fiveg

32

Re: AHK: Выполнение команды до определенного момента

Botsy, предложения должны начинаться с заглавной буквы и заканчиваться точкой! Исправьте!
http://forum.script-coding.com/viewtopi … 45#p142845
http://forum.script-coding.com/viewtopi … 41#p142841
http://forum.script-coding.com/viewtopi … 74#p142374
http://forum.script-coding.com/viewtopi … 79#p142379
http://forum.script-coding.com/viewtopi … 82#p142382
http://forum.script-coding.com/viewtopi … 83#p142383
http://forum.script-coding.com/viewtopi … 87#p142387
http://forum.script-coding.com/viewtopi … 91#p142391
http://forum.script-coding.com/viewtopi … 95#p142395
http://forum.script-coding.com/viewtopi … 01#p142401
http://forum.script-coding.com/viewtopi … 06#p142406
http://forum.script-coding.com/viewtopi … 78#p142478
http://forum.script-coding.com/viewtopi … 91#p142491
http://forum.script-coding.com/viewtopi … 94#p142494
http://forum.script-coding.com/viewtopi … 96#p142496
http://forum.script-coding.com/viewtopi … 24#p142524
http://forum.script-coding.com/viewtopi … 42#p142542
http://forum.script-coding.com/viewtopi … 59#p142559
http://forum.script-coding.com/viewtopi … 66#p142566
http://forum.script-coding.com/viewtopi … 71#p142571
http://forum.script-coding.com/viewtopi … 93#p142593
http://forum.script-coding.com/viewtopi … 40#p142640
http://forum.script-coding.com/viewtopi … 67#p141967
http://forum.script-coding.com/viewtopi … 91#p141991
http://forum.script-coding.com/viewtopi … 21#p142021
http://forum.script-coding.com/viewtopi … 44#p142044
http://forum.script-coding.com/viewtopi … 64#p142164
http://forum.script-coding.com/viewtopi … 65#p142165
http://forum.script-coding.com/viewtopi … 67#p142167
http://forum.script-coding.com/viewtopi … 71#p142171
http://forum.script-coding.com/viewtopi … 48#p142248

Смайлик точку не заменяет!

33

Re: AHK: Выполнение команды до определенного момента

teadrinker пишет:

Почему нет, исходный код можно зашифровать.

А в дампе памяти процесса разве не будет выполняемого кода?

По вопросам возмездной помощи пишите на E-Mail: serzh82saratov@mail.ru
Win10x64 v2004, AutoHotkey_L v1.1.33.02 (Unicode 32-bit). AhkSpy, Hotkey, ClockGui

34

Re: AHK: Выполнение команды до определенного момента

По идее на какой-то момент должен быть, но потом затрётся. Чтобы получить его, нужно уметь отладчиком пользоваться, как простая защита сойдёт.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Skype dmitry_fiveg

35 (изменено: Botsy, 2020-10-26 19:12:09)

Re: AHK: Выполнение команды до определенного момента

ypppu Есть скрипт который поставит точки за меня ?).

36

Re: AHK: Выполнение команды до определенного момента

Botsy, конечно есть, но он платный.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Skype dmitry_fiveg

37

Re: AHK: Выполнение команды до определенного момента

Botsy, ещё раз пройдитесь по сообщениям. Не везде поставлены заглавные буквы. И ставить точку после других знаков препинания неправильно. Исправьте!
http://forum.script-coding.com/viewtopi … 64#p142164
http://forum.script-coding.com/viewtopi … 91#p141991
http://forum.script-coding.com/viewtopi … 66#p142566
http://forum.script-coding.com/viewtopi … 87#p142387
http://forum.script-coding.com/viewtopi … 79#p142379
http://forum.script-coding.com/viewtopi … 74#p142374
http://forum.script-coding.com/viewtopi … 41#p142841

38

Re: AHK: Выполнение команды до определенного момента

ypppu да хватит душить

39

Re: AHK: Выполнение команды до определенного момента

teadrinker пишет:

как простая защита сойдёт.

А есть варианты сложнее? И насколько по твоему возможно в принципе, сделать анк компилируемым языком?

По вопросам возмездной помощи пишите на E-Mail: serzh82saratov@mail.ru
Win10x64 v2004, AutoHotkey_L v1.1.33.02 (Unicode 32-bit). AhkSpy, Hotkey, ClockGui

40

Re: AHK: Выполнение команды до определенного момента

serzh82saratov пишет:

сделать анк компилируемым языком?

Что ты под этим имеешь в виду? AHK — интерпретируемый язык, его уже не переделать.
Вариант посложнее — принудительно затирать память сразу после считывания кода. Такое я когда-то видел у одного чувака с какого-то игрового форума. Следующий уровень сложности — отслеживать в коде запуск через отладчик и менять поведение. И для первого, и для второго нужно неплохое знание c++.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Skype dmitry_fiveg