Q&A

  • DLL 관련 해서???
안녕 하세요? 하나 물어 볼게 있어서 이렇게 글을 올립니다?

* DLL에서 버튼 클릭시 아래와 같이 DLL을 로드 했읍니다.

근데 DLL이 로드 된지 모르고 또 버튼을 클릭시 또 DLL이 로드되는데(DLL 메인폼이

두개가 되는데) 만약에 로드되어 있으면 이 DLL 메인폼을 Show할수 있는 방법좀

알으켜 주세요.



procedure TForm1.Button1Click(Sender: TObject);

begin

tmpLibHandle := LoadLibrary('Eta01.dll');

if tmpLibHandle = 0 then Exit;

try

if tmpLibHandle = HINSTANCE_ERROR then

raise EDLLLoadError.Create('DLL을 로드 할수 없습니다.');



@LoadChildWindow:= GetProcAddress(tmpLibHandle,'LoadChildWindow');



if @LoadChildWindow <> nil then

tmpWindowHandle:=LoadChildWindow(application.Handle,THandle(self),'Etao1.dll')

else

begin

FreeLibrary(tmpLibHandle);

Exit;

end;

except

Exit;

end;

end;



0  COMMENTS