HTA в WinPE - событие Button OnClick не работает
У меня есть очень простой код HTA, который создает меню при работе под WinPE 5.1, в основном это просто 5 кнопок на экране, каждая кнопка должна вызывать файл CMD, однако ничего не происходит.
<head>
<title>Recovery</title>
<HTA:APPLICATION
APPLICATIONNAME="Recovery"
SCROLL="no"
SINGLEINSTANCE="yes"
WINDOWSTATE="maximize"
maximizeButton="no"
minimizeButton="no"
icon="HTA\sbicon.ico"
>
</head>
<script language="VBScript">
'Sub Window_onLoad
'window.resizeTo 400,250
'End Sub
Sub Createimage
Set WshShell = CreateObject("WScript.Shell")
WshShell.Run "x:\windows\system32\cmd.exe /c START /MIN image.cmd", 1 ,TRUE
End Sub
</script>
<script language="VBScript">
Sub RecoverPart
Set WshShell = CreateObject("WScript.Shell")
WshShell.Run "x:\windows\system32\cmd.exe /c START /MIN part.cmd", 1 ,True
End Sub
</script>
<script language="VBScript">
Sub RecoverUSB
Set WshShell = CreateObject("WScript.Shell")
WshShell.Run "x:\windows\system32\cmd.exe /c START /MIN usb.cmd", 1 ,TRUE
End Sub
</script>
<script language="VBScript">
Sub Reboot
Set WshShell = CreateObject("WScript.Shell")
WshShell.Run "X:\windows\system32\cmd.exe /c START /MIN restart.cmd", 1 ,TRUE
End Sub
</script>
<script language="VBScript">
Sub Shutdown
Set WshShell = CreateObject("WScript.Shell")
WshShell.Run "x:\windows\system32\cmd.exe /c START /MIN shutdwn.cmd", 1 ,TRUE
End Sub
</script>
<body bgcolor="#003E67">
<center><img src="HTA\Smartbox2.jpg"/>
<br><br><br>
<input type="button" value="Create Image" name="run_button" onClick="Createimage" style="Width: 300px; height: 75px; font-family: roboto; font-size: 25px;"><br><br>
<input type="button" value="Recover From Partition" name="run_button" onClick="RecoverPart" style="Width: 300px; height: 75px; font-family: roboto; font-size: 25px;"><br><br>
<input type="button" value="Recover From USB" name="run_button" onClick="RecoverUSB" style="Width: 300px; height: 75px; font-family: roboto; font-size: 25px;"><br><br>
<input type="button" value="Restart Device" name="run_button" onClick="Reboot" style="Width: 300px; height: 75px; font-family: roboto; font-size: 25px;"><br><br>
<input type="button" value="Shutdown Device" name="run_button" onClick="Shutdown" style="Width: 300px; height: 75px; font-family: roboto; font-size: 25px;"><br><br></Center>
</body>
Любая помощь будет полезна в запуске CMD.
С уважением
C.
1 ответ
Это работает для меня. Я должен был изменить X на C, чтобы запустить CMD. Я поменял свой на WshShell.Run "%systemroot%\system32\cmd.exe
Незначительные вещи: вам не хватает начала и конца <html>
(это может быть редактор кода, делающий это), и я бы также поставил точку в конце после всех сценариев. Я бы также предложил Set WshShell = Nothing
в конце каждого Sub. Также не уверен, почему вы создали раздел сценариев вокруг каждого Sub вместо одного большого, но это не повредит тому, что я знаю.
<html>
<head>
<HTA:APPLICATION
APPLICATIONNAME="Recovery"
SCROLL="no"
SINGLEINSTANCE="yes"
WINDOWSTATE="maximize"
maximizeButton="no"
minimizeButton="no"
icon="HTA\sbicon.ico"
>
<title>Recovery</title>
<script>
...
</script>
</head>