2009-09-24 3 views
1

COM 개체를 C#으로 만들고 VS가이 개체를 등록하도록했습니다. 나는 그것을 레지스트리에서 볼 수 있고, 테스트 애플리케이션을 만들면 그것에 대한 참조를 추가 할 수 있으며, 사용 가능한 모든 메소드와 예상대로 작동한다.MSMQ가 COM을 호출하지 않음

지금 MSMQ 규칙에서 사용하려고하면 아무 일도 일어나지 않습니다. 호출되지 않습니다. 이것이 .NET 어셈블리이기 때문에 가능합니까? VS Pro가 없기 때문입니까? 전혀 모르십니까?

+0

범프. 누구나 아이디어가 있는지 궁금해. 업데이트. Wondows avent 뷰어에서 COM 구성 요소를 찾을 수 없다는 메시지가 표시됩니다. 왜 그것을 찾을 수 없습니까? 모든 것이 좋아 보인다. –

+0

업데이트. 나는 지금 프로와 대결을하고 있으며 아직 작동하지 않습니다. 그러나 처음 프로젝트를 만들 때 액세스가 거부되었습니다. 두 번째로 잘 만들었습니다. 그러나 나는 그것이 여전히 적절하게 등록되지 않았다고 의심한다. –

+0

VS가'regasm'을 호출하려고 시도하지만 관리자 권한없이 실행되지 않기 때문에 빌드 오류가 발생합니다 – Sebastian

답변

1

매핑 된 네트워크 드라이브에 구성 요소를 등록하지 않았습니까? MSMQ는 다른 WinStation에서 대화 형 WinStation으로 실행됩니다. 대화 형 WinStation에 매핑 된 네트워크 드라이브는 다른 WinStations에서 볼 수 없으므로 설명한 현상 (구성 요소를 찾을 수 없음)이 발생할 수 있습니다.

+0

나는 처음에했다. 그런 다음 프로젝트를 로컬로 이동하고 VS로 등록한 다음 방아쇠 및 규칙을 완전히 다시 작성했습니다. 나는 여전히 같은 이벤트 메시지를 받는다. Windows 서비스를 사용하여 구성 요소에서 트리거되는 메시지가 아닌 메시지를 수신 대기했습니다. http://stackoverflow.com/questions/1521841/receiving-msmq-messages-with-windows-service를 참조하십시오. –

0

시스템 이벤트 로그에서 오류 메시지 (eventvwr.exe)를 확인해야합니다. 구성 요소가 등록되어 있고 MSMQ가 구성 요소를 활성화하도록 제대로 구성되었지만 실패하면 대부분 문제는 사용 권한과 관련이 있습니다. 이벤트 로그에는 프 R의 세부 사항이 들어 있어야합니다.

+0

이벤트는 구성 요소를 찾을 수 없다는 내용을 나타냅니다. 나는 이것을 연구했고 다른 사람들은 이것이 매우 애매한 메시지라고 동의했다. –

0

업데이트 !!!

나는 이것에 관해 다시 말하고 있었다. 나는 메시지가 수신 될 때 발사 할 간단한 EXE를 만들었다. 2 개의 문자열 매개 변수를 허용합니다.

매개 변수를 처음으로 전달하는 것을 잊었으며 전에 논평 한 것과 같은 오류가 발생했습니다. COM 개체를 찾을 수 없습니다. 매개 변수를 전달했는데 정상적으로 작동했습니다.

필자는 COM 객체에 매개 변수를 전달하는 것이 좋다고 생각했지만 어쩌면 아닙니다. 어쩌면 내가 뭔가 잘못하고있는 것 같아. 매개 변수없이 COM을 만들고 COM을 강제로 호출 할 수 있는지 확인합니다.

매개 변수를 허용하는 객체를 만드는 예는 누구에게 알려주십시오.

관련 문제