.....
А у меня вопрос возник... И каким образом твоя длл будет связываться с сервером...?
......
Объясните вы мне плиз... Каким образом у вас длл вообще будет в интернете шарить...?
....
1: Я вообще-то про длл спросил. Длл с инди не работает. На сколько я знаю, длл "решает вопросы" только локально - на компе. А то, что у тебя нашлось первое, это для приложения.
....
И даже после того как я показал рабочий пример:
Прости, но дальше даже дочитывать не стал )) Не твоя длл связывается с твоим сервером, а кликер (сама длл с твоим сервером связаться не может). И уже скрипт передает ключ (полученный на твоем сервере) в длл. Все, что ты можешь менять, ты можешь менять только на своем сервере. Длл же, которая будет у пользователя, будет не изменна и всегда будет отвечать только на один и тот же ключ. Если бы длл могла бы связываться с твоим сервером напрямую, то там был бы другой разговор, но длл этого не может. Я поймал твой ключ ОДИН РАЗ и все! Мне больше НЕ НУЖЕН твой сервер. Так понятно - что я хочу сказать?
А вот мой ответ, неужели в том что я писал не понятно, что
гет запрос делает именно длл?
....
В любой момент я могу удалить этот ключ с сервера, и длл выдаст сообщение, что ключ не верный и функции которые в этой либе не выполнятся.
test.dll 32бит , ключ доступа 12345 (в данный момент рабочий, по запросу интересующихся, я его сменю)
call("test.dll",12345) //это верный ключ
print($_return1) //ответ 1 если верный, ответ 0 если нет
// плюс окно с сообщением будет
halt
Hito скажет - "так я этот ключ всем по раздаю, и у всех будет работать". А я в свою очередь посмотрю в вебвизоре с каких ip и в какое время идет запрос, и если там одновременно будет куча пользователей, я забаню всех
....
К той длл я сменил ключ, теперь он 54321, и никакой другой. Старый уже работать не будет. Но как я понял всем похер, и никто не запускал длл, да и не важно, просто хотел добавить интриги
, чтоб заинтересованные хоть немного пошевелились.... Походу заинтересованных нет.
Код для делфи 10 - Get запрос, работает точно также как и в кликермане, без ssl:
library cmann_plugin;
uses
Vcl.Dialogs, IdHTTP, SysUtils;
//------------------------------------------------------------------------------
function execute( _mas: pInteger; _size: Integer): Integer; export; stdcall;
type
pIntArr = array[0..0] of Integer;
var
get_str : String;
IdHTTP1 : TIdHTTP;
begin
//прям как из справки км :) - "код вернет последную опубликованную версию Clickermann (можете проверить в браузере)"
IdHTTP1:=TIdHTTP.Create(nil);
get_str := IdHTTP1.Get('http://crapware.aidf.org/version/clickermann.php');
ShowMessage(get_str);// смотрим в диалоговом окне результат
result := 0;
end;
//------------------------------------------------------------------------------
// список экспорта
exports execute;
begin
// тело пусто
end.
Вызываем эту длл, и получаем:
Я не уверен в правильности написания кода, так как никогда не работал в делфи с гетпост и прочими фишками. Но он работает.
А вот код той длл , что я давал выше для теста, со сверкой ключа, который я могу изменить или удалить:
library cmann_plugin;
uses
Vcl.Dialogs, IdHTTP, SysUtils;
//------------------------------------------------------------------------------
function execute( _mas: pInteger; _size: Integer): Integer; export; stdcall;
type
pIntArr = array[0..0] of Integer;
var
str_key : String;
IdHTTP1 : TIdHTTP;
str_par : integer;
begin
str_par := pIntArr(_mas^)[0];
IdHTTP1:=TIdHTTP.Create(nil);
str_key := IdHTTP1.Get('http://truckkpp.ru/keys'); //просто создал страницу на хостинге и вписал туда ключ (в данный момент он 54321, можете проверить в браузере)
If str_key = IntToStr(str_par) Then
begin
ShowMessage('Ключ верный, функции этой длл выполнятся');
//тут пишем все то, что должна сделать длл библиотека
result := 1;
end
else
begin
//иначе, фигульки вам
ShowMessage('Ключ не верный, функции этой длл не выполнятся');
result := 0;
end;
end;
//------------------------------------------------------------------------------
// список экспорта
exports execute;
begin
// тело пусто
end.