2009-10-13 3 views
2

안녕하세요 다음 시나리오에 문제가 있습니다.명명 된 파이프를 통한 WCF

여러 프로세스가 생성되는 Windows 서비스가 실행 중입니다. 이러한 프로세스는 명명 된 파이프 바인딩을 통해 WCF 서비스 호스트를 엽니 다. 이제 부모 Windows 서비스는 잘 알려진 명명 된 파이프를 통해 wcf 프록시를 사용하여 하위 프로세스에 ping (연결)을 시도합니다. 그러나이 말은 실패합니다. "끝 점이 없습니다."

부모 프로세스를 콘솔 응용 프로그램으로 실행하면 정상적으로 작동합니다.

아이디어가 있으십니까? 나는 권한에 대해 생각하고 있었지만 자식 프로세스는 같은 세션에있는 것 외에도 서비스의 권한을 상속해야합니다.

덕분에, 크리스토프

+0

은 모두 동일한 명명 된 파이프를 사용하는 하위 프로세스입니까? –

+0

"잘 알려진 명명 된 파이프를 통해"라고 말하면서 - 여러 자식 프로세스에 하나의 명명 된 파이프를 사용하려고하는 것처럼 들립니다. –

+0

어떻게 이러한 자식 프로세스가 생성되었는지 보여 줄 수 있습니까? WCF 끝점을 만들었습니까? 부모 프로세스는 자식 프로세스를 어떻게 호출합니까? –

답변

0

"엔드 포인트를 찾을 수 없습니다"는 엔드 포인트를 찾을 수 없습니다 수 있습니다. 또는 엔드 포인트에 대한 구성을 찾을 수 없습니다.

가장 좋은 추측은 엔드 포인트에 대한 클라이언트 측 구성이 누락되었다는 것입니다.

+1

NetNamedPipeBinding의 경우 "끝 점이 없음"이 꼭 끝점이 없음을 의미하지는 않습니다. 엔드 포인트가 있지만 클라이언트와 통신하려고 시도하는 클라이언트 프로세스가 현재 사용중인 파이프 이름을 공개하기 위해 WCF 서비스 측 스택이 사용하는 공유 메모리 오브젝트를 확인하는 데 필요한 보안 권한을 가지고 있지 않은 경우 정확히 동일한 오류가 표시됩니다. 자세한 내용은 http://blogs.charteris.com/blogs/chrisdi/archive/2008/05/19/exploring-the-wcf-named-pipe-binding-part-1.aspx 등을 참조하십시오. –

0

나는 해결책이 없지만 서비스가 상승 된 권한으로 실행되므로 클라이언트도 높아야합니다.

관련 문제