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

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

 Страниц (8): « 1 2 3 4 5 6 [7] 8 »   

> Описание: Подключение своих DLL. Использование WinAPI функции в скрипте с стандартных библиотек
Zireael
Отправлено: 22 Октября, 2022 - 23:36:37
Post Id



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


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




 Цитата:
запустить .exe файл с флагом?

С аргументами?

Запустить браузер хром с размерами 800,600 в режиме инкогнито:
CODE:
external(VOID, "ShellExecute", "ShellExecuteA", "Shell32.dll");
ShellExecute(0, "open", "chrome.exe", "-window-size=800,600 -incognito", "", SW_HIDE);
 
 Top
neba2101
Отправлено: 23 Октября, 2022 - 13:20:31
Post Id



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


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




 Zireael пишет:
 Цитата:
запустить .exe файл с флагом?

С аргументами?

Запустить браузер хром с размерами 800,600 в режиме инкогнито:
CODE:
external(VOID, "ShellExecute", "ShellExecuteA", "Shell32.dll");
ShellExecute(0, "open", "chrome.exe", "-window-size=800,600 -incognito", "", SW_HIDE);


Отлично, спасибо!
 
 Top
Dantes3000
Отправлено: 11 Февраля, 2023 - 01:21:21
Post Id



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


Покинул форум
Сообщений всего: 1502
Дата рег-ции: Июнь 2016  
Откуда: tg @true_zzz1
Репутация: 58




Как получить имя ПК?

CODE:
char c[200];

external(INT, "GetComputerName", "GetComputerNameA", "kernel32.dll");
GetComputerName(address (#c[0]), 199);


messagebox(format(#c[0]));
 
 Top
Zireael
Отправлено: 11 Февраля, 2023 - 01:27:41
Post Id



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


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




 Цитата:
Как получить имя ПК?

CODE:
external(INT, "GetComputerName", "GetComputerNameA", "kernel32.dll");

char Buffer[200];

int Size = sizearray(Buffer);
GetComputerName(address (#Buffer[0]), address(#Size));
messagebox(format(#Buffer[0]));
messagebox("Записано байт: "+format(Size));
 
 Top
petyanka
Отправлено: 10 Декабря, 2023 - 20:13:03
Post Id



Пользователь
Участник


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




На сколько я понял, подключать одну и ту же DLL с разными параметрами кибор не позволит, возможно есть какой-то способ использовать массив в киборе и с помощью функции внутри DLL применять эти параметры к переменным.

Как мне быть, если мне нужно вносить изменения одновременно в 5 переменных INT внутри DLL, а после вызывать функцию для получения результата?
 
 Top
Zireael
Отправлено: 14 Декабря, 2023 - 12:11:44
Post Id



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


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




 Цитата:
Первый параметр INT DOUBLE STRING CHAR VOID. Что возвращает функция.

По факту вернуть можно только INT. double всегда возвращает 0, char выдаёт ошибку.
Да, можно получить значение по указателю. Надо бы исправить описание, либо исправить возврат перечисленных типов.
 
 Top
neba2101
Отправлено: 08 Декабря, 2024 - 12:11:44
Post Id



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


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




Как переименовать папку?
 
 Top
Zireael
Отправлено: 08 Декабря, 2024 - 12:24:14
Post Id



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


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




 Цитата:
Как переименовать папку?

MoveFile, вначале темы есть пример.
 
 Top
NickSpirit2
Отправлено: 16 Июня, 2025 - 09:29:57
Post Id



Пользователь
Прохожий


Покинул форум
Сообщений всего: 7
Дата рег-ции: Май 2025  
Репутация: 0




Всем привет!
А может кто-нить подскажет как получить дату изменения файла?
Я так понял нужна GetFileTime но как ее корректно подключить не оч понятно..
 
 Top
Zireael
Отправлено: 16 Июня, 2025 - 10:27:22
Post Id



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


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




 Цитата:
как получить дату изменения файла?

CODE:
#define GENERIC_READ -2147483648
#define FILE_SHARE_READ 0x00000001
#define OPEN_EXISTING 3
#define FILE_ATTRIBUTE_NORMAL 128
#define INVALID_HANDLE_VALUE -1

external(INT, "CloseHandle", "CloseHandle", "Kernel32.dll");
external(INT, "CreateFile", "CreateFileA", "Kernel32.dll");
external(INT, "GetFileTime", "GetFileTime", "Kernel32.dll");
external(INT, "FileTimeToSystemTime", "FileTimeToSystemTime", "Kernel32.dll");
external(INT, "FileTimeToLocalFileTime", "FileTimeToLocalFileTime", "Kernel32.dll");
external(INT, "sprintf_s", "sprintf_s", "msvcrt.dll");

char ft[8]; // FILETIME structure
char ft2[8]; // FILETIME structure
char st[16]; // SYSTEMTIME structure
char tzi[172]; // TIME_ZONE_INFORMATION structure

string path = "Kibor.exe"; // путь к файлу

int h_file = CreateFile(path, GENERIC_READ, FILE_SHARE_READ, 0, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0);
if(h_file != INVALID_HANDLE_VALUE)
{
GetFileTime(h_file, 0, 0, address(#ft[0]));
CloseHandle(h_file);

FileTimeToLocalFileTime(address(#ft[0]), address(#ft2[0]));
FileTimeToSystemTime(address(#ft2[0]), address(#st[0]));

int year = codhexi(#st[0], 2);
int month = codhexi(#st[2], 2);
int day = codhexi(#st[6], 2);
int hour = codhexi(#st[8], 2);
int min = codhexi(#st[10], 2);
int sec = codhexi(#st[12], 2);

char buf[99];
sprintf_s(address(#buf[0]), sizearray(buf), "%02d.%02d.%d^r^n%02d:%02d:%d", day, month, year, hour, min, sec);
messagebox(format(#buf[0]));
}
else messagebox("Файл не открылся");
 
 Top
Страниц (8): « 1 2 3 4 5 6 [7] 8 »
Сейчас эту тему просматривают: 1 (гостей: 1, зарегистрированных: 0)
« О программе Кибор »


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




Powered by