Автоматизация и боты

 Помощь      Поиск      Пользователи
Сайт Кибор     Программируемый кликер Кибор     Видео обучение     Заказать бот

 Страниц (1): [1]   

> Без описания
Arimor
Отправлено: 21 Января, 2021 - 01:06:16
Post Id



Пользователь
Мастер


Покинул форум
Сообщений всего: 125
Дата рег-ции: Сент. 2020  
Репутация: 1




Есть скрипт с любыми функциями

CODE:

function one(){}
function two(){}
function three(){}


После компиляции в exe файл, есть возможность выполнить эти функции за счет ярлыков на рабочем столе? ярлык one, запускает функцию one(); и так далее. Возможно как то задать доп параметры в ярлыке которые программа считает и запустит нужную функцию.
 
 Top
Zireael
Отправлено: 21 Января, 2021 - 02:27:49
Post Id



Пользователь
Эксперт


Покинул форум
Сообщений всего: 4401
Дата рег-ции: Нояб. 2017  
Репутация: 580




В свойствах ярлыка дописывайте что нужно, например "D:\Kibor\exe\Kibor-exe.exe -i -c", скрипт вернёт эту строку.
CODE:
external(INT, "GetCommandLine", "GetCommandLineA", "Kernel32.dll");

int adres = GetCommandLine();
int i=0;
string command="";
loop()
{
char c = addressc(adres+i);
if(formatci(c) == 0)break;
command=command+c;
i++;
}

messagebox(command);
// тут парсить строку, проверяя наличие параметров
 
 Top
Kibor
Отправлено: 21 Января, 2021 - 12:19:04
Post Id



Администратор
Эксперт


Покинул форум
Сообщений всего: 8099
Дата рег-ции: Март 2013  
Откуда: Одесса
Репутация: 355




 Zireael пишет:
В свойствах ярлыка дописывайте что нужно, например "D:\Kibor\exe\Kibor-exe.exe -i -c", скрипт вернёт эту строку.

А не так?
CODE:
"D:\Kibor\exe\Kibor-exe.exe" -i -c
 
 Top
Zireael
Отправлено: 21 Января, 2021 - 12:35:19
Post Id



Пользователь
Эксперт


Покинул форум
Сообщений всего: 4401
Дата рег-ции: Нояб. 2017  
Репутация: 580




 Цитата:
А не так?
CODE:
"D:\Kibor\exe\Kibor-exe.exe" -i -c

Да, так. Не там кавычку поставил.
 
 Top
Zireael
Отправлено: 05 Мая, 2021 - 17:52:36
Post Id



Пользователь
Эксперт


Покинул форум
Сообщений всего: 4401
Дата рег-ции: Нояб. 2017  
Репутация: 580




Ещё так можно:
CODE:
external(INT, "GetCommandLineW", "GetCommandLineW", "Kernel32.dll");
external(INT, "CommandLineToArgvW", "CommandLineToArgvW", "Shell32.dll");
external(INT, "MessageBoxW", "MessageBoxW", "User32.dll");
external(INT, "LocalFree", "LocalFree", "Kernel32.dll");

int nArgs;
int szArglist = CommandLineToArgvW(GetCommandLineW(), address(#nArgs));

if(nArgs==0)messagebox("Ошибка при получении аргументов");
else
{
if(nArgs==1)messagebox("Аргументы отсутствуют");
else
{
messagebox("Всего аргументов: "+format(nArgs));
for(int i=0; i<nArgs; i++)MessageBoxW(0, addressi(szArglist+i*4), 0, 0);
LocalFree(szArglist);
}
}

Но, надо учитывать что строки в юникод.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 1 (гостей: 1, зарегистрированных: 0)
« Вопросы и решение проблем »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 




Powered by