【问题标题】:vb6 xcopy deploymentvb6 xcopy 部署
【发布时间】:2008-11-06 22:11:06
【问题描述】:

谁能告诉我如何将 vb6(COM dll 的 ocx 和 exes)的遗留应用程序转换为使用 Regfree COM。

我尝试在 Visual Studio 中打开 dll 并创建清单文件,但其中一些 dll 出现错误。

是否有任何工具可以帮助我完成这个过程?

我尝试了一个名为 regsvr42 的 codeproject 工具,它没有完全创建清单。

我使用诸如 PE explorer 之类的工具来获取所有类型库信息,但是将它们转换为清单文件太难了。

我们已经开始将它迁移到 .NET,几个月我们必须部署它,如果它是基于 xcopy 的部署会更容易。

【问题讨论】:

    标签: deployment vb6 xcopy regfreecom


    【解决方案1】:

    要创建清单文件,您可以尝试使用来自 http://mmm4vb6.atom5.com/ 的 Make My Manifest。

    编辑 MMM 网站已关闭。我看到here,作者在托管方面遇到了问题,并提供了另一个位置来获取“制作我的清单”-download it here

    如果您可以控制对象的创建,则可以从http://www.thecommon.net/10.html 使用 DirectCOM

    请记住,如果使用的 DLL 或 OCX 之一正在使用 CreateObject 调用动态创建其他 COM 对象,则该引用将不会存储在 vbp 项目文件中,您将不会获得完整的清单文件。可能您必须在应用程序运行时捕获对象创建。 Depends.exe 应用程序可以分析正在运行的应用程序并报告所有使用的 dll。我不知道是否有工具可以找到额外的 COM 相关信息。

    【讨论】:

      【解决方案2】:

      在 MSDN 上的这篇文章中有一个很好的演练:Registration-Free Activation of COM Components: A Walkthrough

      【讨论】:

        【解决方案3】:

        Make My Manifest 可以适应后期绑定和早期绑定。您只需手动、按文件位置或按 ProgId 添加对后期绑定依赖项的引用。

        您可以查看http://mmm4vb6.atom5.com/mmm-demo-1248.html 以获取有关使用该实用程序的更多帮助。

        【讨论】:

          【解决方案4】:

          MakeMyManifest 被称为为 VB6 项目创建清单的自动工具,我自己没有尝试过。 DirectCOM也有粉丝,我又没试过。

          编辑 MMM 网站已关闭。我看到here,作者在托管方面遇到了问题,并提供了另一个位置来获取“制作我的清单”-download it here

          有一种半自动技术。您可以使用 Visual Studio 2008 创建清单(您可以使用免费版本,如 Visual Basic Express Edition)。然后手动进行一些编辑以使清单适用于 VB6。请参阅此 MSDN 文章的 this section 以获取分步说明 - 忽略文章的其余部分,即关于 ClickOnce。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2012-02-26
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2012-04-08
            • 2010-12-01
            相关资源
            最近更新 更多