好的,我有一个包含COM API(OurAPI)和.NET API(Our.API)的程序集(让我们称之为assembly1)
我可以毫无问题地访问项目中的com端,设置引用,将Embed Interop设置为False,然后离开。 COM端有几个缺失的例程,所以我试图使用.NET端
更改引用(删除com,指向DLL,甚至删除interop dlls),将OurAPI的引用更改为Our.API,确保Embed Interop = false
我得到了
无法嵌入在程序集中找到的互操作类型。考虑设置“嵌入互操作类型”'财产到假。
这是在VS2013,C#5 (注意程序集名称是两边的SAME)
答案 0 :(得分:0)
想出来 - 它是DLL中的一个错误,因为它只编译为64位,或者仅在32位时编译COM,并且在两个接口上存在重复方法(相同签名),因此它与本身。又不是.NET问题,而是DLL中的问题