Я обрезаю данные и жду, когда пользователь нажмет "ОК" в окне сообщения, прежде чем вырезать новую строку данных.

ECHO Site1| clip
MSG %USERNAME% /W  Site1 0315
ECHO Site2| clip
MSG %USERNAME% /W Site2 0315

Мне нужно подождать, пока пользователь не нажмет "ОК" во всплывающем окне, прежде чем двигаться дальше. Это кажется ждать 30 секунд. Кто-нибудь знает, как заставить его фактически ждать, пока пользователь не щелкнет?

Обновить

@LotPings предложил мне использовать PowerShell, которого я избегал, потому что многие из моих пользователей боятся термина "сценарий", а не "командной строки" или "пакетной". Поскольку у каждого пользователя есть свой собственный список сайтов, я использовал CSV для сайта и времени и написал следующий скрипт PowerShell:

$wshell = New-Object -ComObject Wscript.Shell
$Data = Import-Csv $env:USERPROFILE\Documents\myFHA.csv
ForEach($a in $Data){
$a.site|clip
$wshell.popup($a.site+" at "+$a.time) |  Out-Null
}

Я все еще очень хотел бы знать, как заставить MSG ждать неопределенно долго в CMD, если это возможно. Спасибо за помощь.

1 ответ1

3

Вы можете использовать vbscript или PowerShell для всплывающего окна. Ссылка

ECHO Site1| clip
>NUL powershell -NoP -C "(new-object -COM WScript.Shell).popup('Your message here.',0,'Site1 0315')"
ECHO Site2| clip
>NUL powershell -NoP -C "(new-object -COM WScript.Shell).popup('Your message here.',0,'Site2 0135')"

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .