【问题标题】:How to update ActiveX controls within a C# project in Visual Studio 2005如何在 Visual Studio 2005 中更新 C# 项目中的 ActiveX 控件
【发布时间】:2014-01-17 20:23:40
【问题描述】:

请说明如何将 Visual Studio 2005 项目 (C#) 中的 ActiveX 控件替换为更新版本。

【问题讨论】:

    标签: c# visual-studio-2005 activex


    【解决方案1】:

    Visual Studio 通过检查注册表知道哪些 ActiveX 控件可用,以及在哪里可以找到它们。这基本上就是 regsvr32 所做的...为 COM 对象(包括 ActiveX 控件)创建适当的注册表项。

    要升级您的控件:

    • 关闭 Visual Studio(为了好的措施...不确定这是否是严格要求)
    • 酌情使用其安装程序或 regsvr32 安装更新的 ActiveX 控件
    • 如果新旧版本的COM接口相同,就大功告成了。如果没有,您需要修复项目的引用部分(删除旧的引用,添加新的 COM 引用)

    【讨论】:

      【解决方案2】:

      Eric J 的回答有效,但是对于 activeX 控件有两个引用,一个在 InterOP 的名称空间下,另一个在 AxInterOp 下。删除并重新添加 COM 引用可以更新 Interop dll,但对于 AxInterop dll,您需要将一个新控件拖到表单中,让 Visual Studio 自动为您生成。

      (在某些情况下,您更新activeX控件会导致表单设计器崩溃。如果发生这种情况,您将需要使用aximp.exe手动生成AxInterop dll。)

      【讨论】:

        【解决方案3】:

        我的公司生产 ActiveX 控件。 Visual Studio 中最简单的方法是在项目上运行“干净”,然后构建。此步骤将删除包装程序集并重建它们。如果新的 ActiveX 控件有任何更改,比如新属性,则将 COM 类型转换为 .NET 类型的旧程序集的签名将不匹配,这就是您必须重建它们的原因。

        【讨论】:

          猜你喜欢
          • 2011-06-27
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2010-10-15
          • 1970-01-01
          相关资源
          最近更新 更多