Как мне отладить автономный скрипт VBScript? - PullRequest
31 голосов
/ 18 февраля 2010

У меня есть сценарий VBScript , который принимает 2 аргумента командной строки и выполняет некоторую проверку. Мне нужно отладить это, чтобы увидеть, как программа выполняется. Я пытался вставить это в Excel (используя VBA ). Однако есть некоторые конструкции, такие как Const и т. Д., Которые не поддерживаются, а также некоторые проверки, такие как принятие аргументов командной строки.

Поэтому я хотел бы знать, есть ли способ отладки этого сценария. У меня установлены Windows XP и Office 2003. Я не могу установить другие приложения на офисный компьютер.

Ответы [ 5 ]

40 голосов
/ 18 февраля 2010

Запустите cscript.exe для полных командных аргументов, я думаю

cscript //X scriptfile.vbs MyArg1 MyArg2

запустит скрипт в отладчике.

3 голосов
/ 18 февраля 2010

Нажмите mse7.exe, установленный вместе с Office, обычно на \Program Files\Microsoft Office\OFFICE11.

Это откроет отладчик, откроет файл и затем запустит отладчик в режиме графического интерфейса.

1 голос
/ 06 марта 2018

Это для будущих читателей.Я обнаружил, что самым простым способом для меня было использовать Visual Studio -> Инструменты -> Внешние инструменты.Подробнее в этом ответе .

Простые в использовании и хорошие средства отладки.

0 голосов
/ 08 марта 2019

Для потомков вот статья Microsoft KB308364 на эту тему. Это больше не существует на их сайте, это из архива .

Как отлаживать файлы Windows Script Host, VBScript и JScript

РЕЗЮМЕ

Цель этой статьи - объяснить, как отлаживать Windows Script Скрипты хоста (WSH), которые могут быть написаны любым скриптом ActiveX язык (если установлен соответствующий языковой движок), но которые по умолчанию написаны на VBScript и JScript. Есть определенные флаги в реестре и, в зависимости от используемого отладчика, некоторые необходимые процедуры для включения отладки.

ДОПОЛНИТЕЛЬНАЯ ИНФОРМАЦИЯ

Для отладки сценариев WSH в Microsoft Visual InterDev, Microsoft Script Debugger или любой другой отладчик используют следующую командную строку Синтаксис для запуска скрипта:

wscript.exe //d <path to WSH file>
           This code informs the user when a runtime error has occurred and gives the user a choice to debug the application. Also, the //x flag

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

wscript.exe //d //x <path to WSH file>
           After a debug condition exists, the following registry key determines which debugger will be used:

HKEY_CLASSES_ROOT\CLSID\{834128A2-51F4-11D0-8F20-00805F2CD064}\LocalServer32

Отладчик сценария должен быть Msscrdbg.exe и Visual InterDev отладчик должен быть Mdm.exe.

Если Visual InterDev является отладчиком по умолчанию, убедитесь, что функция «точно в срок» (JIT) включена. Чтобы сделать это, следуйте этим шаги:

  1. Запустить Visual InterDev.

  2. В меню Сервис выберите Параметры.

  3. Нажмите Отладчик, а затем убедитесь, что параметры Just-In-Time выбраны для категорий General и Script.

Кроме того, если вы пытаетесь отладить файл .wsf, убедитесь, что следующий раздел реестра имеет значение 1:

HKEY_CURRENT_USER\Software\Microsoft\Windows Script\Settings\JITDebug

СВОЙСТВА

Номер статьи: 308364 - Последний отзыв: 19 июня 2014 г. - Редакция: 3.0

Ключевые слова: kbdswmanage2003swept kbinfo KB308364

0 голосов
/ 12 сентября 2013

Экспортируйте эту папку в файл резервной копии и попробуйте удалить эту папку и все содержимое.

HKEY_CURRENT_USER\Software\Microsoft\Script Debugger
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...