caveman007
25-11-2006, 04:15
Думаю не ошибусь, если скажу, что всякий продвинутый пользователь, делающий свою сборку Windows, вначале тестирует ее на виртуальной машине. Не знаю, кого как, а меня изрядно напрягает в VMWare необходимость при создании новой машины делать кучу лишних телодвижений. Пытался найти, можно ли делать это из командной строки - не нашел.
Зато нашел выход при помощи AutoIt! (http://oszone.net/display.php?id=3663)
Opt("WinTitleMatchMode", 2)
if Not WinExists("VMware Workstation","") Then
Run(@ProgramFilesDir & "\VMware\VMware Workstation\vmware.exe")
Else
WinActivate("VMware Workstation","")
EndIf
WinWait("VMware Workstation","")
; ---------------------------------------------------------------------------------
; !!! обратить внимание !!!
; у AutoIt имеется некоторый бзик с эмуляцией нажатия клавиш
; если в системе по умолчанию стоит русская раскладка клавиатуры
; и надо "проиграть" английское клавиатурное сокращение,
; как, например, в данном случае Ctrl-N, то в команде Send
; надо писать русскую букву, стоящую на этой клавише
Send("^т")
; ---------------------------------------------------------------------------------
Opt("WinTitleMatchMode", 4)
ControlClick("VMware Workstation","","Button1")
;: запуск помощника
;: страница 1 - приветствие
WinWait("New Virtual Machine Wizard","This wizard will guide you thr")
Send("{ENTER}")
;: страница 2 - выбрать соответствующую конфигурацию (Типичная/Специальная)
WinWait("New Virtual Machine Wizard","Create a new virtual machine w")
Send("{ENTER}")
;: страница 3 "Guest operating system"
WinWait("New Virtual Machine Wizard","Guest operating system")
;: ControlClick("New Virtual Machine Wizard","Guest operating system","Button1")
Send("{TAB}{DOWN 4}{ENTER}")
;: страница 4 "Virtual machine name"
WinWait("New Virtual Machine Wizard","&Virtual machine name")
Send("{ENTER}")
;: страница 5 - Сеть
WinWait("New Virtual Machine Wizard","Use n&etwork address translati")
ControlClick("New Virtual Machine Wizard","Use n&etwork address translati","Button3")
Send("{ENTER}")
;: страница 6 - Емкость виртуального жесткого диска
;: устанавливается сразу 2 Gb, место на диске выделяется целиком
WinWait("New Virtual Machine Wizard","This virtual disk can never be")
Send("2{TAB}{SPACE}{TAB 3}{ENTER}")
ControlClick("New Virtual Machine Wizard","This virtual disk can never be","Button1")
Если что не так, всегда можно подправить под свои нужды. Думаю, комментарии излишни. Или нет?
Зато нашел выход при помощи AutoIt! (http://oszone.net/display.php?id=3663)
Opt("WinTitleMatchMode", 2)
if Not WinExists("VMware Workstation","") Then
Run(@ProgramFilesDir & "\VMware\VMware Workstation\vmware.exe")
Else
WinActivate("VMware Workstation","")
EndIf
WinWait("VMware Workstation","")
; ---------------------------------------------------------------------------------
; !!! обратить внимание !!!
; у AutoIt имеется некоторый бзик с эмуляцией нажатия клавиш
; если в системе по умолчанию стоит русская раскладка клавиатуры
; и надо "проиграть" английское клавиатурное сокращение,
; как, например, в данном случае Ctrl-N, то в команде Send
; надо писать русскую букву, стоящую на этой клавише
Send("^т")
; ---------------------------------------------------------------------------------
Opt("WinTitleMatchMode", 4)
ControlClick("VMware Workstation","","Button1")
;: запуск помощника
;: страница 1 - приветствие
WinWait("New Virtual Machine Wizard","This wizard will guide you thr")
Send("{ENTER}")
;: страница 2 - выбрать соответствующую конфигурацию (Типичная/Специальная)
WinWait("New Virtual Machine Wizard","Create a new virtual machine w")
Send("{ENTER}")
;: страница 3 "Guest operating system"
WinWait("New Virtual Machine Wizard","Guest operating system")
;: ControlClick("New Virtual Machine Wizard","Guest operating system","Button1")
Send("{TAB}{DOWN 4}{ENTER}")
;: страница 4 "Virtual machine name"
WinWait("New Virtual Machine Wizard","&Virtual machine name")
Send("{ENTER}")
;: страница 5 - Сеть
WinWait("New Virtual Machine Wizard","Use n&etwork address translati")
ControlClick("New Virtual Machine Wizard","Use n&etwork address translati","Button3")
Send("{ENTER}")
;: страница 6 - Емкость виртуального жесткого диска
;: устанавливается сразу 2 Gb, место на диске выделяется целиком
WinWait("New Virtual Machine Wizard","This virtual disk can never be")
Send("2{TAB}{SPACE}{TAB 3}{ENTER}")
ControlClick("New Virtual Machine Wizard","This virtual disk can never be","Button1")
Если что не так, всегда можно подправить под свои нужды. Думаю, комментарии излишни. Или нет?