Exe文件输出函数的调用(100分)

  • 主题发起人 主题发起人 Toysun
  • 开始时间 开始时间
T

Toysun

Unregistered / Unconfirmed
GUEST, unregistred user!
我搜索了一下,相关的是下面的帖子
http://www.delphibbs.com/delphibbs/dispq.asp?lid=96123
可我测试的结果还是弹出错误

---------------------------
call
---------------------------
Access violation at address C35DF8EB. Read of address C35DF8EB.
---------------------------
确定
---------------------------

那里有相关资料吗?


Exe调用Exe的输出函数
program TestExe; //输出函数的Exe

uses
Windows;

procedure Test(p: PChar); export; stdcall;
begin
MessageBox(0, p, 'Test', MB_OK);
end;

exports
Test;

begin
end.

procedure TForm1.Button1Click(Sender: TObject); //另一APP中调用
var
lib: THandle;
Test: procedure(p: PChar); stdcall;
begin
lib := LoadLibrary('TestExe.exe');
if lib = 0 then
ShowError('Cannot load the module')
else
begin
@Test := GetProcAddress(lib, 'Test');
if @Test = nil then
ShowError('Cannot GetProcAddress')
else Test('This is a test');
FreeLibrary(lib);
end;
end;
 
可否做成dll或借鉴dll中输出函数调用的办法?
 
帮你顶,这种情况我还没遇到过呢
 
没有答案,不等了,随便给谁
 
后退
顶部