почему WScript.CreateObject ("WScript.Shell") должен аварийно завершить работу? - PullRequest
0 голосов
/ 21 марта 2011

Думаете ли вы о какой-либо причине, что эта строка должна аварийно завершиться: Установить oShell = WScript.CreateObject ("WScript.Shell")

... только если я запускаю сценарий из InstallShieldExpress как пользовательское действие.

MsgBox "before create ObjectShell"
Set oShell = WScript.CreateObject ("WScript.Shell")
MsgBox "after create ObjectShell"

Я никогда не вижу сообщения "после создания ObjectShell"; - (

и если я просто запускаю скрипт, дважды щелкнув файл скрипта в проводнике Windows, конечно, все в порядке.

1 Ответ

2 голосов
/ 21 марта 2011

Возможно, глобальный объект WScript недоступен в среде InstallShield. Вы можете проверить это, используя такой скрипт:

MsgBox Not IsEmpty(WScript) ' True if WScript is defined, False if it's undefined

Если WScript не определено, попробуйте использовать CreateObject("WScript.Shell"). См. Также В чем разница между CreateObject и Wscript.CreateObject?

...