Registriert seit: 29. Mai 2002
37.621 Beiträge
Delphi 2006 Professional
|
AW: LoadLibrary in Thread?
27. Sep 2011, 10:08
Delphi-Quellcode:
type
TInit = procedure; stdcall;
function MyTestThread(Param: Pointer): Integer;
var
hTestDLL: THandle;
TestDLLInit: TInit;
begin
hTestDLL := LoadLibrary(PChar(ExtractFilepath(ParamStr(0)) + 'TestDLL.dll'));
if hTestDLL <> 0 then
begin
@TestDLLInit := GetProcAddress(hTestDLL, 'Init');
if Assigned(TestDLLInit) then
begin
TestDLLInit;
end
else
MessageBox(0, PChar(SysErrorMessage(GetLastError)), 'GetProcAddress', MB_ICONSTOP);
end
else
MessageBox(0, PChar(SysErrorMessage(GetLastError)), 'LoadLibrary', MB_ICONSTOP);
Result := 0;
end;
procedure TForm1.btn1Click(Sender: TObject);
var
ThreadID: Cardinal;
begin
CloseHandle(BeginThread(nil, 0, MyTestThread, nil, 0, ThreadID));
end;
Geht ohne Probleme mit Delphi 7.
Michael Ein Teil meines Codes würde euch verunsichern.
|
|
Zitat
|