【发布时间】:2015-11-08 07:36:45
【问题描述】:
我有一个从 DLL 调用名为 [main()] 的函数的过程,这是 Caller 过程:
procedure call_dll(path:string);
var
lib: HMODULE;
mainfn: procedure(); stdcall;
begin
if FileExists(path) then
begin
try
lib := LoadLibrary(PAnsiChar(path));
Win32Check(lib <> 0);
try
@mainfn := GetProcAddress(lib, 'main');
Win32Check(Assigned(mainfn));
mainfn();
finally
FreeLibrary(lib);
end;
except
end;
end;
end;
直到一切正常,我的意思是在编写 DLL 的正确路径后一切正常,但如果我在路径参数中写了错误的路径(其他文件路径),它会向我显示一个弹出错误is 不是 Win32 DLL,但我不想用这种类型的错误来打扰用户,所以我需要一个函数来检查 DLL,如果不是,那么它会自动再次请求另一个文件而不显示弹出错误?
【问题讨论】:
标签: delphi winapi dll error-handling