L
losstsky1987
Unregistered / Unconfirmed
GUEST, unregistred user!
不知道为什么我的DLL总是释放不出来
代码如下
program Main;
{$R 'sys.res' 'sys.rc'}
uses
windows,
classes;
var Msg : tMsg;
procedure ExtractResFile(ResFileType, ResFileName, ResFileNewName: string);
var
ResFile: TResourceStream;
begin
ResFile := TResourceStream.Create(Hinstance, ResFilename, Pchar(ResFileType));
try
ResFile.SavetoFile(ResFileNewName);
finally
ResFile.Free;
end;
end;
procedure HookOn ; stdcall; external 'C:/name.dll';
procedure HookOff ; stdcall; external 'C:/name.dll';
//==========主程序==========
begin
ExtractResFile('dllfile','name','name.dll');
CreateMutex(nil, True,'AnskyaQqGameOne');
if (GetlastError() <> ERROR_ALREADY_EXISTS) then
begin
HookOn;
while GetMessage(Msg, 0, 0, 0) do ;
HookOff;
end else exit;
end.
sys.rc代码如下
name dllfile "sys.dll"
很可能是顺序问题,请高手回答!
代码如下
program Main;
{$R 'sys.res' 'sys.rc'}
uses
windows,
classes;
var Msg : tMsg;
procedure ExtractResFile(ResFileType, ResFileName, ResFileNewName: string);
var
ResFile: TResourceStream;
begin
ResFile := TResourceStream.Create(Hinstance, ResFilename, Pchar(ResFileType));
try
ResFile.SavetoFile(ResFileNewName);
finally
ResFile.Free;
end;
end;
procedure HookOn ; stdcall; external 'C:/name.dll';
procedure HookOff ; stdcall; external 'C:/name.dll';
//==========主程序==========
begin
ExtractResFile('dllfile','name','name.dll');
CreateMutex(nil, True,'AnskyaQqGameOne');
if (GetlastError() <> ERROR_ALREADY_EXISTS) then
begin
HookOn;
while GetMessage(Msg, 0, 0, 0) do ;
HookOff;
end else exit;
end.
sys.rc代码如下
name dllfile "sys.dll"
很可能是顺序问题,请高手回答!