2009-06-29 58 views
5

此问题是answerPaul Alexander对问题"Should interop assemblies be signed?"的后续处理。如何生成COM interop代理到C#源代码中?

根据Interop程序集的复杂程度 - 您可以将代理代码生成到单独的.CS/.VB文件中,并将其直接编译到程序集中。那么你不必担心强名称问题。

我该如何去生成COM库的interop代理代码到C#源代码中?

我想这可以用tlbimp完成,然后用Reflector提取源代码。有没有人做过这个或者有没有更简单的方法?

回答

6

看看下面的MSDN文章:(有关如何手动创建互操作程序集会谈)

一旦你得到的互操作程序集,使用工具像Reflector反汇编它并生成原始的C#源代码。 Reflector.FileDisassembler使这真的很容易。

现在您可以将生成的C#/ VB源直接包含到您的程序集中。

3

我不知道更简单的方法,并通过Reflector提取接口描述。但是在VS 2010中,微软将为您做这个automatically