无需注册的COM:VB6可执行文件引用VB6 DLL

3
所以,我有一个单一的VB6可执行文件,引用多个VB6 COM DLL。我是否可以动态生成可执行文件的清单以及每个引用的DLL的清单?如果可以,那么如何实现?
我希望在构建过程中执行此操作,而无需将COM DLL注册为该过程的一部分。
注意:到目前为止,我找到的所有无需注册COM示例都涉及.NET互操作,这不是我正在做的要求。
[编辑]
经过使用Unattended Make My Manifest进行初步测试后,我发现它不太用户友好。由于只有一个Sample.ini文件用于文档,因此我很难理解应该将什么放入该文件中,而不需要放入该文件中。无论如何,我决定使用自己的工具制作清单。希望我能得到雇主的许可,将代码作为开源发布。
*暂时来说,如果您处于与我相同的位置,并且希望创建使用并排/无需注册的COM交互的构建和生产环境,则知道这是可能的。我建议首先使用简单的DLL和消费者应用程序手动创建它们,然后逐步构建,直到符合您的特定需求。*
2个回答

2
我们在日常构建中使用无人参与制作我的清单来创建便携版本。它会创建一个可以使用mt.exe嵌入到可执行文件中的单个清单。

1
我在UMMM工具上找不到任何文档。示例没有明确说明需要什么和不需要什么。是否可能通过电子邮件与您咨询讨论? - bitcycle
二进制文件夹包含一个名为 sample.ini 的文件,其中解释了所有支持的命令。基本上您需要一个单独的 Identity 命令和多个 File 命令。准备一个 ini 文件(将其保留在版本控制系统下),将所有二进制文件复制到一个文件夹中,然后使用单个参数的 ummm.exe "编译器"来生成清单。也可以选择使用 mt.exe 将清单嵌入主可执行文件。这是相当明显的(您也可以检查源代码),但如果您有任何问题,请给我发送电子邮件。 - wqw
我也曾经成功地使用过这个。它确实满足了 OP 的需求 - 我们将其作为自动化构建过程的一部分运行。它用于表达我们自己的 DLL(C# 与 COM 和 VB6),以及第三方 DLL。 - StayOnTarget
参见:https://dev59.com/1HRB5IYBdhLWcg3w7reV#1568427 - StayOnTarget

0

您可以尝试使用Make my manifest,这是一个用于创建VB6程序清单的工具。我不知道它是否可以作为构建过程的一部分自动运行。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接