谁能告诉我如何转换一个旧的应用程序是vb6 ( COM的ocx和exes),以使用Regfree COM。
我尝试在visual studio中打开dll并创建清单文件,但其中一些dll出现错误。
有没有什么工具可以帮助我完成这个过程呢?
我尝试了一个来自codeproject的名为regsvr42的工具,它没有完全创建清单。
我使用像PE explorer这样的工具来获取所有的类型库信息,但是将它们转换成清单文件太难了。
我们已经开始将其迁移到.NET,有几个月我们必须部署它,如果它是基于xcopy的部署,它会更容易。
发布于 2008-11-13 14:03:04
要创建清单文件,您可以尝试使用Make My manifest from http://mmm4vb6.atom5.com/。
编辑MMM网站已关闭。我看到作者在托管方面遇到了问题,并提供了另一个位置来获取Make My Manifest - download it here。
如果您可以控制对象的创建,则可以使用http://www.thecommon.net/10.html中的DirectCOM
请记住,如果使用的DLL或OCX之一正在使用CreateObject调用动态创建其他COM对象,则该引用将不会存储在vbp项目文件中,您也不会获得完整的清单文件。您可能必须在应用程序运行时捕获对象创建。Depends.exe应用程序可以分析正在运行的应用程序,并报告所有使用的dlls。我不知道是否有工具可以找到额外的COM相关信息。
发布于 2008-11-25 18:35:08
在MSDN上有一个很好的演练介绍了本文中要做的事情:Registration-Free Activation of COM Components: A Walkthrough。
发布于 2008-11-13 17:36:23
Make My Manifest既可以支持早期绑定,也可以支持后期绑定。您只需通过文件位置或ProgId手动添加对后期绑定依赖项的引用。
您可以在http://mmm4vb6.atom5.com/mmm-demo-1248.html上查看有关使用该实用程序的其他帮助。
https://stackoverflow.com/questions/270523
复制相似问题