Окна:Как отобразить неблокирующее окно оповещения/подтверждения?
-
20-08-2019 - |
Вопрос
Я хочу реализовать простое окно подтверждения/предупреждения, которое можно вызвать с помощью пакетного сценария Windows XP/Vista с помощью CLI.
Стандартное окно оповещения, похоже, блокируется, а это означает, что весь пакетный сценарий остановится во время вызова окна оповещения, а это НЕ то, что я хочу.
Если его необходимо закодировать, предоставьте пример или документацию.Язык может быть чем угодно, что можно компилировать без необходимости использования виртуальной машины.
Решение
start MessageBox.vbs
...где MessageBox.vbs
содержит вызов функции MsgBox.
Другие советы
Вы можете использовать msg
инструмент:
Send a message to a user.
MSG {username | sessionname | sessionid | @filename | *}
[/SERVER:servername] [/TIME:seconds] [/V] [/W] [message]
username Identifies the specified username.
sessionname The name of the session.
sessionid The ID of the session.
@filename Identifies a file containing a list of usernames,
sessionnames, and sessionids to send the message to.
* Send message to all sessions on specified server.
/SERVER:servername server to contact (default is current).
/TIME:seconds Time delay to wait for receiver to acknowledge msg.
/V Display information about actions being performed.
/W Wait for response from user, useful with /V.
message Message to send. If none specified, prompts for it
or reads from stdin.
Вызов
msg * Some text
не блокирует.Он также имеет удобную возможность снова закрыть окно сообщения через заданное время, если это необходимо.
Однако, на самом деле, вам не следует использовать эти вещи.Монологи (например, окна сообщений с точной кнопкой ОК) имеют информационную эффективность 0 % (ср.Джеф Раскин: Гуманный интерфейс.Раздел 4–3: Измерение эффективности интерфейса или Аза Раскин: Монологовые блоки и прозрачные сообщения или Аза Раскин: Знайте, когда прекратить проектирование в количественном отношении).