目前,我正在进行无需注册的COM设置,类似于以下内容:
a.exe
(依赖于b.dll
;不直接依赖于c.dll
)a.exe.manifest
(声明了对c.dll
的无需注册COM注册)b.dll
(依赖于c.dll
。例如,.NET TMBIMP生成的COM包装器)c.dll
(某些COM实现DLL)c.dll.manifest
(c.dll
的无需注册COM清单)
是否可以更改此方案,以便将位于a.exe
上的清单放置在b.dll
上?如果可能的话,我希望其他程序能够引用b.dll
,而不必在各处添加额外的清单。
(a.exe.manifest
具有以下内容:
<file name="msdia110.dll">
<comClass description="Debug Information Accessor" clsid="{761D3BCD-1304-41D5-94E8-EAC54E4AC172}" threadingModel = "Both"/>
</file>
并且
c.dll.manifest
是使用清单工具mt.exe
生成的。(太长了,这里不包含)
b.dll
没有自动生成。(tlbimp
在这里出了很多问题,我们不得不反编译、处理IL代码并重新编译) - Billy ONeal