2010-07-08 5 views
2

IConnectionPoint 이벤트를 구현하는 C++/ATL COM 서버가 있습니다. 내 클라이언트는 이벤트에 연결하는 C# 응용 프로그램입니다. COM 서버가 SYSTEM 서비스로 만들어지면 클라이언트가 이벤트에 제대로 연결할 수 있습니다. COM 서버가 LocalService 서비스 (기본 설정)로 만들어지면 이벤트에 첨부 할 때 E_ACCESSDENIED 예외가 발생합니다..NET에서 COM 서버의 이벤트에 연결할 때 E_ACCESSDENIED 예외가 발생했습니다.

COM 서버가 LocalService 일 때 이벤트가 작동하도록하려면 어떻게해야합니까?

감사합니다.

+0

Google "DCOM 보안 구성" –

+0

클라이언트의 ID는 무엇입니까? – Ben

답변

0

LocalService가 사용하려고하는 사용자를 찾아서 사용자가 액세스 할 수 있도록해야합니다. 전체 컴퓨터에 대한 액세스를 조정할 수 없다면 프로그래밍 방식으로 CoInitializeSecurity을 사용하고 액세스 권한이있는 것으로 알려진 ID를 사용해야 할 수 있습니다.

자세한 내용은 http://msdn.microsoft.com/en-us/library/ms679760(v=VS.85).aspx을 참조하십시오.

관련 문제