EreTIk's Box » Заметки о WinDbg » vbox_kd - небольшой набор скриптов для автоматизации запуска отладчика WinDbg при работе с VirtualBox


За последнее время я практически полностью перешел на VirtualBox в качестве гипервизора. Этому, в числе прочего, сильно поспособствовали:


Отладку Windows через сеть я использую, что бы не нажимать F8 при каждой загрузке систем Win8 и старше. И чем дальше, тем больше в качестве гостевой ОС используется Win8+. А vmmon.exe не автоматизирует запуск/останов отладчиков для машин без VirtualKD.


Это и подтолкнуло к созданию набора из двух скриптов - vbox_kd. Первый vbox_kd_set_VM_connect_options.cmd - подготовительный, он сохраняет информацию о том, с какой командной строкой нужно запускать WinDbg.

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

vbox_kd_set_VM_connect_options.cmd "Windows 8.1 x64" "net:port=50004,key=aaa.bbb.ccc.ddd"

А для машины "Windows 7", которая будет отлаживаться с использованием VirtualKD:

vbox_kd_set_VM_connect_options.cmd "Windows 7" "com:pipe,resets=0,reconnect,port=$(pipename)"

Второй скрипт vbox_kd_monitor.pyw запускает VirtualBox.exe и следит за состояниями виртуальных машин. Если запускается машина, для которой был предварительно вызван vbox_kd_set_VM_connect_options.cmd, то будет запущен WinDbg. При завершении сеанса виртуальной машины будет завершен и WinDbg.


Для корректной работы скриптов нужно исправить пути в vbox_kd.ini, если VirtualBox или WinDbg установлены не по стандартному пути. А так же VirtualBox должен быть установлен с поддержкой скриптинга Python (по умолчанию ставится инсталлятором).


ΞρεΤΙκ