alex_diablo
Постоянный участник
- Сообщения
- 144
- Реакции
- 9
nVar = MsgBox ("Начать установку?", vbInformation + vbOKCancel, "установка")
if nVar = 2 then
WScript.Sleep 1000
end if
msgbox("end")
где 1 - выбор "ОК", 2 - "Отмена"VB.NET / VBA:nVar = MsgBox ("Начать установку?", vbInformation + vbOKCancel, "установка") if nVar = 2 then WScript.Sleep 1000 end if msgbox("end")
WScript.Sleep 1000 - засыпает на 1000 миллисекунд
nVar = MsgBox ("Начать установку?", vbInformation + vbOKCancel, "установка")
if nVar = 2 then
WScript.Sleep 1000
end if
Set WshShell = CreateObject("WScript.Shell")
RetCode = WshShell.Run("C:\123\ВашБантик.bat", 1, True)
MsgBox "Обработка завершена! Код возврата - " & RetCode
alex_diablo, не грустите, просто покажите код)
sub install
nVar = MsgBox ("Начать установку?", vbInformation + vbYesNoCancel, "установка")
'6 - yes
'7 - no
'2 - cancel
select case nVar
case 6
call start
case 7
WScript.Sleep 60000
call install
case 2
exit sub
end select
end sub
sub start
Set WshShell = CreateObject("WScript.Shell")
RetCode = WshShell.Run("C:\123\ВашБантик.bat", 1, True)
MsgBox "Обработка завершена! Код возврата - " & RetCode
end sub
call install
RetCode = WshShell.Run("C:\123\ВашБантик.bat", 0, True)
psexec -s -h -d \\domain_comp -c -f installer.bat
xcopy /Y \\fsmsk1\Soft\scripts\1.vbs c:\temp\1.vbs
start /wait c:\temp\1.vbs
:: далее нужно как-то написать код ожидания ответа от пользователя
:: из скрипта и в зависимости от нажатой там кнопки далее уже действие:
:: либо код батника этого выполняется дальше, либо ожидаем минуту, если
:: юзер нажал НЕТ, либо если нажал ОТМЕНА - завершаем работу батника,
:: и удаляем все файлы: файл скрипта, который скопировали с сетевой шары
:: и этот батник
@echo off
SetLocal EnableExtensions
call :msgbox_Init
call :msgbox "Msg=Сообщение" "Заголовок" %vbYesNo% ret
call :msgbox "Msg=Сообщение в \n несколько \n строк" "Заголовок" %vbYesNo% ret
:: обработка результата нажатия
if "%ret%"=="%vbYes%" echo Yes
if "%ret%"=="%vbNo%" echo No
pause >nul
goto :eof
:msgbox_Init
:: Константы кнопок: https://msdn.microsoft.com/en-us/library/office/gg264626.aspx)
set vbYesNo=4
set vbYes=6
set vbNo=7
exit /B
:msgbox [_in_Message] [_in_Title] [_in_Button_const] [_out_variable]
:: результат в виде кода нажатой клавиши возвращается в переменную, указанную в аргументе № 4
set "Msg=%~1"
set "%Msg:\n=""&vblf&""%"
for /f "UseBackQ delims=" %%i in (`mshta vbscript:Execute("CreateObject(""Scripting.FileSystemObject"").GetStandardStream(1).Write(MsgBox(""%Msg%"",%~3,""%~2""))&Close()"^)`) do set "%~4=%%~i"
exit /B
Написал в виде функции. Запустите демку:
]
для запуска батника
Код:sub install nVar = MsgBox ("Начать установку?", vbInformation + vbYesNoCancel, "установка") '6 - yes '7 - no '2 - cancel select case nVar case 6 call start case 7 WScript.Sleep 60000 call install case 2 exit sub end select end sub sub start Set WshShell = CreateObject("WScript.Shell") RetCode = WshShell.Run("C:\123\ВашБантик.bat", 1, True) MsgBox "Обработка завершена! Код возврата - " & RetCode end sub call install
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set textFile = objFSO.OpenTextFile("c:\windows\temp\file1.txt", 8, True)
textFile.WriteLine "сюда, кстати, можно записать содержимое батника и запустить его"
textFile.Close
sub install
nVar = MsgBox ("Начать установку?", vbInformation + vbYesNoCancel, "установка")
'6 - yes
'7 - no
'2 - cancel
select case nVar
case 6
call start
case 7
WScript.Sleep 10000
call install
case 2
call cancel
end select
end sub
sub start
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set textFile = objFSO.OpenTextFile("c:\windows\temp\file1.txt", 8, True)
textFile.WriteLine "сюда, кстати, можно записать содержимое батника и запустить его"
textFile.Close
end sub
sub cancel
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set textFile = objFSO.OpenTextFile("c:\windows\temp\file2.txt", 8, True)
textFile.WriteLine "сюда, кстати, можно записать содержимое батника и запустить его"
textFile.Close
end sub
call install
1.да
2. нет, произвольные надписи нельзя
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?