.NET Web应用程序升级中缺少ActiveX控件

时间:2013-10-03 18:02:06

标签: asp.net activex

我在从.NET 2.0升级到.NET 4.0运行时的Web应用程序中的ActiveX控件出现问题。

情况如下:

  1. 应用程序的GUI与以前的版本基本相同。
  2. 旧版本和新版本在两个不同的虚拟目录应用程序下的同一网站下运行。
  3. OLD应用程序上的用户可以看到ActiveX签名板控件。
  4. 新应用程序上的用户无法看到ActiveX签名控件(请参阅红色x)
  5. 两个应用程序上返回到浏览器(Internet Explorer)的ActiveX控件HTML完全相同。
  6. 无法在新应用程序上看到ActiveX控件的用户正在尝试从同一台计算机访问新应用程序,并在访问dol应用程序时登录。
  7. 开发人员(我)可以从开发PC上看到旧应用程序和新应用程序上的ActiveX控件,但不能从生产PC中看到与最终用户相同结果的ActiveX控件。
  8. 将站点添加到受信任域并不能解决问题。
  9. 我的问题是:如果两个URL位于同一个域下,同一个网站提供服务并且区别于不同的URL,则一个URL上的用户可以使用完全相同的ActiveX控件而不能访问另一个URL,这可能会出现问题具有不同.NET版本的虚拟应用程序?

    • 我可以找不到发送到浏览器的库吗?
    • 我错过了浏览器的安全设置。
    • 我是否缺少支持ActiveX控件所需的支持库或其他对象?

    我希望我已经提供了解决这个问题所需的一切。如果没有,请问。 ActiveX控件和相关问题不是我的强项,这个问题一直困扰着我好几个星期,我已经在网上寻找解决方案。我感谢任何帮助,谢谢你。

    增加:

    以下是来自旧应用程序的对象标记。

    <OBJECT classid=clsid:69A40DA3-4D42-11D0-86B0-0000C025864A height=75 id=SigPlus1 name=SigPlus1 style="HEIGHT:148px;WIDTH:250px;LEFT:0px;TOP:0px; background-color:#efefef;"> <PARAM NAME="_Version" VALUE="131095"> <PARAM NAME="_ExtentX" VALUE="4842"> <PARAM NAME="_ExtentY" VALUE="1323"> <PARAM NAME="_StockProps" VALUE="0"> </OBJECT>

    来自更新的应用程序的对象标记仅适用于我的开发计算机:

    <object classid="clsid:69A40DA3-4D42-11D0-86B0-0000C025864A" height="75" id="SigPlus1" name="SigPlus1" style="height:148px;width:250px;left:0px;top:0px;background-color:#efefef;"> <param name="_Version" value="131095"/> <param name="_ExtentX" value="4842"/> <param name="_ExtentY" value="1323"/> <param name="_StockProps" value="0"/> </object>

1 个答案:

答案 0 :(得分:1)

在检查旧应用程序的代码后,结果发现隐藏了ActiveX控件。当我将图层设置为“显示”控件时,我发现不仅控件丢失,而且访问它们的JavaScript也被破坏了。

我绝不应该相信原始应用程序是正确的。

事实证明,几个月前用于访问Web应用程序的生产PC已经被替换,并且用户不知道应用程序被破坏 - 可怕。 ActiveX软件从未安装在新的客户端PC上,这就是缺少ActiveX控件的原因。

在客户端PC上安装软件纠正了问题。