Показать сообщение отдельно
Старый 16.11.2007, 12:10   #1
Новичок
 
Регистрация: 16.11.2007
Адрес: г. Владивосток
Сообщений: 2
Сказал Спасибо: 1
Имеет 0 спасибок в 0 сообщенях
Merdek
Печаль Проблема использования DLL написанной в Delphi.

Проблема использования DLL написанной в Delphi.

Скомпелированная DLL лежит в той же папке, что и PacketHack 1.3.8
При вызове "CallFunction" вылетает ошибка "Invalid Argument".
Подскажите что не так...


Код DLL-ки в Delphi
///---------------------------------------------------------------------------------------------------------------------------

library DLL;

uses
SysUtils,Classes;

function Str1(b:integer): string;
stdcall;
begin
if b=0 then
result := '1!'
else
result := '2!';
end;

exports
Str1 index 1 name 'op';

begin
end.

///---------------------------------------------------------------------------------------------------------------------------


Код скрипта
///---------------------------------------------------------------------------------------------------------------------------

var
lib, lib1:Integer;
Res:variant;
ar:array of variant;
str1: string;

procedure Init;

begin
str1:='0';

lib := loadLibrary('User32.dll');
lib1 := loadLibrary('DLL.dll');

Res:= CallFunction(lib1,'op',1,[0]);
str1:=Res;
Res := CallFunction(lib,'MessageBoxW',4,[nil,str1,'text2',0]);

FreeLibrary(lib);
FreeLibrary(lib1);
end;

begin
end;

///---------------------------------------------------------------------------------------------------------------------------
Merdek вне форума   Ответить с цитированием