-1

我用C#语言开发了一个com dll,用C++通过COM调用托管代码,成功了。然后我通过混淆排除接口和 com 导出类来混淆 C# com dll 。我使用 C++ 调用 COM dll,创建 com 对象时失败。为什么?是否应该排除任何其他类或接口?谢谢你。

4

1 回答 1

0

首先使用以下命令取消注册旧的 .NET 程序集(未混淆):

regasm /u yourassembly

然后使用 /tlb 选项再次注册以再次生成 tlb 文件,然后使用新的 tlb 文件编译 C++ 项目。命令是:

regasm /tlb yourassemly

注意,regasm.exe 在 C:\Windows\Microsoft.NET\Framework{.NET 版本号} 下,不同版本的 .NET 有不同的 regasm.exe,也有 32 位和 64 位版本,必须使用正确对象,真爱。

于 2013-10-31T12:38:15.830 回答