Delphi判断另一个DLL中的窗体是否存在
一个主程序,注入给某线程一个DLL,HOOK,热键呼出窗体A,在窗体A上设置一个按钮,按下注入另一个DLL,HOOK和热键同上,正常情况下,每次按热键都会同时出项两个窗体...
一个主程序,注入给某线程一个DLL,HOOK,热键呼出窗体A,在窗体A上设置一个按钮,按下注入另一个DLL,HOOK和热键同上,正常情况下,每次按热键都会同时出项两个窗体,怎么才能在窗体A中判断窗体B是否存在,存在窗体A就不显示!
========================================================
function HookProc(nCode:Integer;WParam: WPARAM;LParam:LPARAM):LRESULT;stdcall;
begin
if (Ncode=HC_ACTION) then
begin
if (WParam=VK_HOME)and ((1 shl 31)and LParam=0) then
begin
if not Assigned(form2) then begin{form2是窗体二的名字}
if form1=nil then Form1:=Tform1.Create(nil);
form1.Visible:=not form1.Visible;
end;
end;
Result := CallNextHookEx(hHk,nCode,WParam,LParam);
end;
end;
不过这种方法只能判断封装在同一个DLL里的其他窗体,我想知道FORM2怎么换成另外一个DLL中窗体的名字!
也就是如何引用外部标识符! 展开
========================================================
function HookProc(nCode:Integer;WParam: WPARAM;LParam:LPARAM):LRESULT;stdcall;
begin
if (Ncode=HC_ACTION) then
begin
if (WParam=VK_HOME)and ((1 shl 31)and LParam=0) then
begin
if not Assigned(form2) then begin{form2是窗体二的名字}
if form1=nil then Form1:=Tform1.Create(nil);
form1.Visible:=not form1.Visible;
end;
end;
Result := CallNextHookEx(hHk,nCode,WParam,LParam);
end;
end;
不过这种方法只能判断封装在同一个DLL里的其他窗体,我想知道FORM2怎么换成另外一个DLL中窗体的名字!
也就是如何引用外部标识符! 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询