【问题标题】:(Legacy) MFCOM VBScript gets Invalid Procedure Call(旧版)MFCOM VBScript 获取无效的过程调用
【发布时间】:2017-10-04 23:56:12
【问题描述】:

我可以很好地列出所有已发布的应用程序,这很有效,但是在尝试获取根应用程序文件夹时,我得到一个无效的过程调用。有谁知道我在这里做错了什么?

Dim theFarm,rootAppFolder
Set oWSHShell = CreateObject("Wscript.Shell")
Set oWSHNetwork = CreateObject("WScript.Network")
Set oWSHProcEnv = oWSHSHELL.Environment("PROCESS")

            'Create MetaFrameFarm object
            Set theFarm = CreateObject("MetaFrameCOM.MetaFrameFarm")
              if Err.Number <> 0 Then
                WScript.Echo "Can't create MetaFrameFarm object"
                WScript.Echo "(" & Err.Number & ") " & Err.Description
                WScript.Echo ""
                WScript.Quit Err.Number
              End if


            'Initialize the farm object.
            theFarm.Initialize 1

          If Err.Number <> 0 Then
                WScript.Echo "Can't  Initialize MetaFrameFarm object"
                WScript.Echo "(" & Err.Number & ") " & Err.Description
                WScript.Echo ""
                WScript.Quit Err.Number
              End if

Set rootAppFolder = theFarm.GetRootFolder(MetaFrameAppFolder) 'error on this line here
Set appFolder = rootAppFolder.GetSubFolder("A_USA")
Set folder = appFolder.AppFolder

For each app in folder.Applications

    app.LoadData(0)
    WScript.Echo app.AppName

Next

【问题讨论】:

    标签: vbscript citrix


    【解决方案1】:

    使用Option Explicit 来避免像未初始化的MetaFrameAppFolder 这样的错误。

    【讨论】:

    • 什么是显式选项。出于某种原因,当我将数字 12 放在那里而不是 MetaFrameAppFolder 时它起作用了。现在我意识到应该将其设置为常量。
    猜你喜欢
    • 1970-01-01
    • 2013-09-06
    • 1970-01-01
    • 2016-10-11
    • 2013-04-12
    • 1970-01-01
    • 1970-01-01
    • 2023-03-15
    • 1970-01-01
    相关资源
    最近更新 更多