CMD/BAT - [решено] Сообщение MsgBox

Аватара пользователя
sov44

CMD/BAT - [решено] Сообщение MsgBox

Сообщение sov44 »

Подскажите, как вывести сообщение MsgBox в несколько строчек?



Код:

Код: Выделить всё

@echo off &chcp 1251 >nul
echo WScript.Quit(MsgBox(WScript.Arguments(0),vbYesNo+vbDefaultButton2,WScript.Arguments(1)))>"%temp%\MsgBox.vbs"
WScript "%temp%\MsgBox.vbs" "Для успешной работы скрипта необходимо закрыть Word" "Внимание!"
If %ERRORLEVEL% equ 6 (chcp 866 >nul &echo  Word закрыт.) else (
chcp 866 >nul &echo  Word не закрыт.)
del /q "%temp%\MsgBox.vbs"
pause>nul

п.с. Поправьте меня, если есть ошибки в написании скрипта Изображение
Аватара пользователя
Iska

Re: CMD/BAT - [решено] Сообщение MsgBox

Сообщение Iska »

Цитата sov44:



как вывести сообщение MsgBox в несколько строчек
CMD/BAT - [решено] Сообщение MsgBox




Так?

Код:

Код: Выделить всё

@echo off &chcp 1251 >nul
echo WScript.Quit(MsgBox(WScript.Arguments(1) ^& Chr(13) ^& WScript.Arguments(2) ^& Chr(13) ^& WScript.Arguments(3), vbYesNo+vbDefaultButton2,WScript.Arguments(0)))>"%temp%\MsgBox.vbs"
WScript "%temp%\MsgBox.vbs" "Внимание!" "Для успешной работы скрипта необходимо закрыть Word" "Вторая строка" "Третья строка"
If %ERRORLEVEL% equ 6 (chcp 866 >nul &echo  Word закрыт.) else (
chcp 866 >nul &echo  Word не закрыт.)
del /q "%temp%\MsgBox.vbs"
pause>nul
Аватара пользователя
gora

Re: CMD/BAT - [решено] Сообщение MsgBox

Сообщение gora »

Я предпочитаю не «Chr(13)», а константу, причём родного стандарта — «vbCrLf».
Аватара пользователя
Iska

Re: CMD/BAT - [решено] Сообщение MsgBox

Сообщение Iska »

Я предпочитаю не «Chr(13)», а константу, причём родного стандарта — «vbCrLf».
Аватара пользователя
sov44

Re: CMD/BAT - [решено] Сообщение MsgBox

Сообщение sov44 »

Тема по-сути решена, однако возникла ошибка при интеграции сообщения в скрипт. Не могу понять, где ошибка

Код:

Код: Выделить всё

@Echo Off
SetLocal enabledelayedexpansion
set iSumT=0
set "dr=%USERPROFILE%\Recent"& call :Calc "%dr%" lnk
set "dr=%USERPROFILE%\Application Data\Microsoft\Office\Последние файлы"& call :Calc "%dr%" lnk
set "dr=%USERPROFILE%\Local Settings\Temporary Internet Files\Content.MSO"& call :Calc "%dr%" *
set "dr=%USERPROFILE%\Local Settings\Temporary Internet Files\Content.Word"& call :Calc "%dr%" *
pause>nul
:Calc
for /f "delims=*" %%i in ('dir /b/a-d "%dr%\*.%2" 2^>nul') do (
set "bg=%%i"
if "!bg:~0,1!"=="~" (
         echo WScript.Quit(MsgBox(WScript.Arguments(1) ^& Chr(13) ^& WScript.Arguments(2) ^& Chr(13) ^& WScript.Arguments(3) ^& Chr(13) ^& WScript.Arguments(4), vbYesNo+vbDefaultButton1,WScript.Arguments(0)))>"%temp%\MsgBox.vbs"
         WScript "%temp%\MsgBox.vbs" "Внимание!" "     Для успешной работы скрипта" "необходимо закрыть документы Word" "" "            Документы закрыты?"
         If %ERRORLEVEL% equ 6 (Echo %%i &pause) else (Goto :Calc)
         del /q "%temp%\MsgBox.vbs"
         ) else (
for %%a in ("%dr%\!bg!") do (
set /a iSumT += %%~za
del /f/q %%a
)))
Аватара пользователя
gora

Re: CMD/BAT - [решено] Сообщение MsgBox

Сообщение gora »

sov44, поправил две строки, в остальном ковыряться не стал

Код:

Код: Выделить всё

>"%temp%\MsgBox.vbs" echo WScript.Quit^(MsgBox^(WScript.Arguments^(1^) ^& vbCrLf ^& WScript.Arguments^(2^) ^& vbCrLf ^& vbCrLf ^& WScript.Arguments^(3^), vbYesNo+vbDefaultButton1,WScript.Arguments^(0^)^)^)
WScript "%temp%\MsgBox.vbs" "Внимание" "     Для успешной работы скрипта" "необходимо закрыть документы Word" "            Документы закрыты?"
Аватара пользователя
AlexVong

Re: CMD/BAT - [решено] Сообщение MsgBox

Сообщение AlexVong »

Подскажите пожалуйста, как сделать чтобы выводилось сообщение, если например папка С:\1\ пуста, если нет - выполнялась след. команда?
Аватара пользователя
sov44

Re: CMD/BAT - [решено] Сообщение MsgBox

Сообщение sov44 »

Цитата sov44:



можно-ли установить координаты расположения окна msgbox на рабочем столе
CMD/BAT - [решено] Сообщение MsgBox




Нет. См. ниже другой вариант.




Цитата sov44:



как сделать автозакрытие окна.
CMD/BAT - [решено] Сообщение MsgBox




Смотрите, пробуйте, выбирайте:



Код:

Код: Выделить всё

Option Explicit
InputBox "Скрипт-кодинг!", "Привет", "", 7500, 7500 ' in twips; as 500x500 px
With WScript.CreateObject("WScript.Shell")
	.Popup "Скрипт-кодинг!", 5, "Привет", , vbOKOnly + vbInformation
End With
' http://forum.script-coding.com/viewtopic.php?id=218
With WScript.CreateObject("Internet.HHCtrl")
	.TextPopup "Привет" & vbCrLf & "Скрипт-кодинг!", "Verdana,8", 6, 6, 6, 6
	WScript.Sleep 5000
End With
WScript.Quit 0


Цитата sov44:



Нужно для батника.
CMD/BAT - [решено] Сообщение MsgBox




«Nircmdc.exe trayballoon …»?!



Или:



Код:

Код: Выделить всё

msg.exe 0 /time:5 "Привет, Скрипт-кодинг!"
Аватара пользователя
Iska

Re: CMD/BAT - [решено] Сообщение MsgBox

Сообщение Iska »

Подскажите, как избавится от мелькания в панели быстрого запуска значка Изображение при запуске vbs



Код:

Код: Выделить всё

wscript.createobject("wscript.shell").popup replace(wscript.arguments(0),"\n",vbCrLf), 6, wscript.arguments(1), vbokonly + vbinformation

батником



Код:

Код: Выделить всё

@echo off
cscript //nologo "%~dp0msg.vbs" "текст 1 \n Текст 2" "шапка"
Аватара пользователя
sov44

Re: CMD/BAT - [решено] Сообщение MsgBox

Сообщение sov44 »

Цитата sov44:



в панели быстрого запуска
CMD/BAT - [решено] Сообщение MsgBox




Где?! Может быть, на панели задач?




Цитата sov44:



как избавится
CMD/BAT - [решено] Сообщение MsgBox




Метод .Popup() создаёт видимое окно, и пока оно будет отображаться — на панели задач будет окно приложения.
Ответить

Вернуться в «Скриптовые языки администрирования Windows»