Internet Explorer 용 확장 프로그램을 만들어야하고 EXE Com 서버 여야합니다. 먼저, here과 같이 ATL 마법사를 사용하여 간단한 COM DLL 프로젝트를 만들었습니다. IE가 내 확장 프로그램을로드하고 메시지 상자를 보여주었습니다. 다음으로이 모든 단계를 반복했지만 COM EXE 프로젝트를 만들었습니다. 같은 방법으로 등록했는데 Internet Explorer에서 확장 프로그램을 볼 수는 있지만 작동하지 않습니다. 내 함수 IObjectWithSite :: SetSite 및 IObjectWithSite :: GetSite가 호출되지 않습니다. 이 문제를 해결하는 방법을 알려주십시오.Internet Explorer 용 확장 프로그램을 Exe Com 서버로 만드는 방법은 무엇입니까?
1
A
답변
0
Out-of-Process COM 서버를 BHO로 등록 할 수는 없지만 BHO에서 COM 서버를 호출 할 수 있습니다. 예 : 당신은 후기 바인딩을 사용 할 수 있습니다
CComDispatchDriver pServer;
if (SUCCEEDED(pServer.CoCreateInstance(CLSID_YourComServer)) {
pServer.Invoke0(L"ServerMethodName");
}
0
를 구축하고 프로젝트 (YourServerPS.dll 이름으로 자동 생성 된 프로젝트)에 대한 프록시 스텁 DLL을 등록했는지 확인하십시오.
설정을 컴퓨터에 감염된 바이러스와 구별 할 수 없습니다. IE에서 out-of-process 서버와 통신을 시작하도록 설득 할 수는 없지만 샌드 박스에 연결할 방법이 없습니다. BHO는 진행 중이며 견고한 요건이어야합니다. –