2010-06-02 2 views
1

제대로 C# 클래스에 필요한 모든 것을 설정했는지 모르겠지만 COM에서 작동합니다. 나는 C/C++ 프로젝트에서 성공적으로 사용 된 C# 클래스의 예제를 찾고 있었지만 아무 것도 발견하지 못했습니다.COM에 노출 된 C# 클래스에서 C/C++ 헤더 파일 추출

OLE/COM 개체보기 응용 프로그램을 사용하여 .tlb 파일을 열고 .h로 저장하려고 시도했지만 오류가 발생합니다. MIDL1009 : 알 수없는 인수가 무시되었습니다. MIDL1001 : 입력 파일을 열 수 없습니다 Studio

"Studio"는 파일의 이름이 아니며 Syslog이므로 빨간색 플래그가 표시됩니다.

아이디어가 있으십니까?

답변

4

tlb이있는 경우 헤더 파일이 필요 없습니다. tlb의 #import은 자동으로 생성됩니다.

#import "my.tlb" named_guids raw_interfaces_only 

보다 약 #importhere를 참조하십시오.

2

C# 클래스를 COM에 이미 노출 한 경우 COM 상호 운용성을 사용하여 C++ 코드에서 COM 호출 가능 래퍼에 액세스해야합니다.

헤더 파일을 생성 할 필요가 없습니다.

C++ 프로젝트에서 관리 코드를 실행할 수있는 옵션이있는 경우 COM이 필요 없어도 C# 클래스를 직접 참조하고 C++의 다른 .NET 개체처럼 액세스 할 수 있습니다.