【问题标题】:VB script fails when migrated to W7迁移到 W7 时 VB 脚本失败
【发布时间】:2016-08-09 20:12:16
【问题描述】:

我正在将旧 32 位 XP 服务器上的经典 ASP 站点迁移到 w7 64 位服务器。该应用程序在当前托管的地方运行良好。

迁移时,我在 global.asa 文件中遇到错误:

Sub Session_OnStart

    'works fine
    Set Session("GaoAppEnv")=Server.CreateObject("GaoCommon.AppEnv.1")
    'error
    Set Session("GaoSession")=Session("GaoAppEnv").CreateSession("file.tps")    
    ... 

出现错误:

Gao Subsystem error '80020009'

Unknown Exception

我尝试在问题区域周围的 vb 脚本中添加一些错误捕获代码,但是当我尝试执行 WScript.Echo 时,我又收到另一个错误“需要对象:'WScript'”

我已经通过 DLL 添加了 GaoCommon.AppEnv.1 的注册表设置,但是 file.tps 似乎只是注册表中文件本身的路径,并且看起来是 XML 而不是我所看到的在线获取 tps 文件类型。

看起来我在迁移过程中遗漏了一些东西,有什么想法吗?

更新 - 我已经完成/检查的事情:

  • 应用程序池为 32 位
  • 注册表已更新为 file.tps 和 GaoCommon.AppEnv.1

【问题讨论】:

    标签: vbscript asp-classic windows-xp windows-7-x64


    【解决方案1】:

    首先,您需要确保 ASP 在 IIS 服务器上的 32 位应用程序池中运行,以实现向后兼容性。

    • 启动 Internet 信息服务 (IIS) 管理器。
    • 在“连接”窗格中,单击“应用程序池”。
    • 突出显示您的应用程序的应用程序池,然后单击“操作”窗格中的“高级设置...”。
    • 在“高级设置”对话框中,将“启用 32 位应用程序”指定为 True。
    • 单击“确定”关闭“高级设置”对话框。

    WScript.Echo 仅对 WSH 下的 VBScript 有效(即通过wscript.execscript.exe 在服务器上本地执行的脚本)。要在 ASP 中调试,您可以改用Response.Write

    【讨论】:

    • 感谢您的信息。我在迁移时启用了 32 位应用程序,我会将其添加到我的问题中。那么在vb脚本中没有办法调试吗?关于CreateSession 的初始错误的任何信息?
    猜你喜欢
    • 2021-10-25
    • 2013-04-25
    • 2019-04-28
    • 2020-07-04
    • 1970-01-01
    • 1970-01-01
    • 2017-06-03
    • 2018-05-10
    • 2020-04-09
    相关资源
    最近更新 更多