vbscript запуск определенного профиля подключения в личных коммуникациях IBM

Мне было поручено преобразовать более медленное кодирование Macro Express Pro для IBM Personal Communications в версию VBScript/VBA. Кодирование Macro Express Pro открывает заранее определенный профиль из определенного места.

Этот процесс может занять до 30 секунд. VBScript делает это примерно за треть времени для профиля по умолчанию (TN3270.WS). Однако, когда мы пытаемся открыть конкретную ссылку, выделенную в файле UNET.txt, мы получаем это как ошибку:

Ошибка времени выполнения "440": ошибка автоматизации

Вот код VBScript, который мы пытаемся использовать:

Sub Main()
    Dim EName
    Dim autECLConnList, objConnMgr

    Set objConnMgr = CreateObject("Pcomm.autECLConnMgr")
    objConnMgr.autECLConnList.Refresh
    objConnMgr.StartConnection ("profile='C:\ProgramData\IBM\Personal Communications\UNET REWORK.ws' connname=a")
    Application.Wait (Now + TimeValue("00:00:12"))
    objConnMgr.autECLConnList.Refresh
    EName = objConnMgr.autECLConnList(1).Name
End Sub

Ошибка возникает на objConnMgr.StartConnection ("profile='C:\ProgramData\IBM\Personal Communications\UNET REWORK.ws' connname=a") линия. Мы знаем, что у нас правильный путь к профилю, потому что мы нашли его местоположение:

IBM говорит, что если имя профиля содержит пробелы, оно "должно быть заключено в одинарные кавычки":

Кто-нибудь может дать совет о том, что мы делаем неправильно или чего нам не хватает?

Благодарю.

1 ответ

Решение

Я нашел способ сделать то, что мне нужно сделать. Я смотрел слишком специфично, чтобы начать сессию PCOMM, что я даже не думал о запуске .exe файл и отправить его параметры. Вот как я это сделал:

Sub Main()
    Dim WShell

    Set WShell = CreateObject("WSCript.shell")

    WShell.Run """C:\Program Files (x86)\IBM\Personal Communications\pcsws.exe"" ""C:\ProgramData\IBM\Personal Communications\UNET REWORK.WS"""
End Sub

Я уверен, что это дублирующий ответ на другой вопрос, но большинство ответов устарели более чем на несколько лет. Это решение является актуальным и недавно протестированным, поэтому оно является более надежным источником.

Другие вопросы по тегам