2011-02-15 4 views
3

VB6 프로그램 내부에서 사용하기 위해 COM interop를 사용하여 디자인하려고하는 DLL이 있습니다. 내가 솔루션을 빌드 할 때 다음과 같은 오류가 나타납니다 :COM INTEROP 용 C# DLL에 .tlb 파일을 등록하는 동안 오류가 발생했습니다.

The assembly DLLFilePath could not be converted to a type library. Type library exporter encountered an error while processing 'DLLName.DLLName, DLLName'. Error: Element not found.

그런 다음, 나는 그러나 나는 매우 비슷한 오류 (: RA0000 오류)를 발견, 수동 .tlb 사용 RegAsm를 등록했습니다.

나는이 실수의 이유를 모른다. DataTable 형식을 사용하고 있기 때문에 그것이 호환 될 수 없습니까?

+0

DataTable 파생 클래스 com을 볼 수있게 만드는 것을 기억합니다. 나에게 적합하지 않습니다 ... 속성/메소드를 통해 DataTable에 노출 된 모든 유형이 표시되지는 않습니다. –

답변

10

나는 이미 문제의 해결책을 찾았습니다! 솔루션 어셈블리 및 클래스 선언에서 동일한 GUID를 사용하고있었습니다. 새 GUID를 생성하면 문제가 해결되었습니다!

+0

감사합니다, 유익한 게시물이었습니다 :) –

+0

저 역시 그것을 고쳤습니다! (내가 보았던 에러 코드에 대한 MS의 도움은 ~ 10 년 된 VB.NET 문제를 언급했다 - 도움이되지 않았다) – winwaed

관련 문제