【发布时间】:2013-05-17 10:09:50
【问题描述】:
这快把我逼疯了。我开发了一个 .NET COM DLL,VB6 DLL 包装器使用它来更新和替换应用程序中的一些旧功能。
我现在正在尝试删除在客户端计算机上使用 regasm 的要求,因此我已经研究了如何在一个测试 DLL 上执行此操作,并且一切正常。
为了以防万一,我分支了 DLL,并添加了一个 app.manifest 文件。其他一切都很好,我得到了一切工作。清单是嵌入的,Visual Studio 2012 在发布文件夹中生成一个 mydll.dll.manifest 文件。
然后我回到原来的主干并添加了一个 app.manifest 文件(合并没有意义,因为没有代码更改)。我将分支的内容复制到 app.manifest 文件中并构建了发布版本。清单嵌入在 DLL 中,但没有生成 mydll.dll.manifest 文件。
我知道拥有 mydll.dll.manifest 文件并不是绝对必要的,但我希望事情保持一致(并且由于某种原因,测试过程不会产生与主干版本相同的结果)所以如何我可以强制创建它吗?
这是一个 VB.NET DLL 项目,因此它没有(或者我找不到)first answer here 中提到的“生成清单”属性下拉列表。我该如何设置?或者有没有办法直接编辑项目文件来设置?
参考资料:
【问题讨论】:
-
您不需要 dll 的清单,因为它使用当前进程的安全令牌,例如应用程序,因此您需要 exe 的清单(我认为)
-
是的,我知道,但也需要嵌入清单才能使 reg free com 正常工作
标签: vb.net visual-studio regfreecom