2012-12-28 72 views
2

我正在使用旧的vb应用程序,并且在使用此应用程序时,出现以下错误:错误:无法将类型为'MSScriptControl.ScriptControlClass'的COM对象转换为接口类型为'MSScriptControl.IScriptControl'的COM对象

document.all["ScoringMessageBox$MessageLabel"].innerHTML = "An error occurred while loading the score model.<br>SUCCESS: Set Model Language<br>FAILED: Set Model parameters<br>ERROR: Unable to cast COM object of type 'MSScriptControl.ScriptControlClass' to interface type 'MSScriptControl.IScriptControl'. This operation failed because the QueryInterface call on the COM component for the interface with IID '{0E59F1D3-1FBE-11D0-8FF2-00A0D10038BC}' failed due to the following error: Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG))."; 
    var RedirectAfterClick = document.getElementById('RedirectAfterClick'); 

这里(谷歌搜索),但没有成功,我已经尝试过的事情的清单:

  • IIS重置(与IIS托管网站)
  • 注册框架1.4 & & 2 0.0
  • 下载sct10en.exe和安装http://www.microsoft.com/en-us/download /details.aspx?id=1949(COM组件),IIS

  • 注册COM组件手动

  • 请重新安装,你能帮助我吗?

  • +3

    我的公司正在使用c#应用程序和旧vb应用程序为最老的客户谁不想升级他们的软件(高成本)。 – Razor

    +1

    当然,支持不想升级的客户的成本很高。不要忘记向前冲锋,只要你让他们不这样做便宜,他们永远不会。 –

    回答

    0

    你应该检查一个32位和64位的问题。脚本控件只是一个32位组件。如果您计划使用脚本控制,则不能让IIS以64位的方式运行。

    +0

    谢谢你的回应,抱歉(我的错)客户端(不是我)使用的是Windows Server 2003 32位...我已经通过web ex查看了他的iis设置,但我没有通知问题。 – Razor

    +2

    它应该工作得很好。你可以尝试一个简单的.VBS,它只是做一个CreateObject(“MSScriptControl.ScriptControl”),看看它的工作原理。 –

    +0

    确实,我坚信这是唯一的解决方案。谢谢 – Razor

    相关问题