MessageBox отдельно от основной программы

370
09 января 2017, 21:55
MessageBox(NULL, L"Can't connect on Server", L"Error", MB_SYSTEMMODAL);

Во-первых, скажу, что MessageBox'a я вывел в отдельный поток (чтобы не ждать ответа пользователя), но дело в том, что мне нужно сделать так, чтобы после того, как закрылся процесс

ExitProcess(0);

MessageBox остался открытым (т.к. в нем указывается уведомление пользователю)

Пожалуйста, не предлагать

  1. приостановку основного потока (т.к. я использую DLL, а не основную программу)
  2. Запуск совершенно другой программы (я использую DLL, а не пишу программу)

Использую IDE Visual Studio 15 с набором средств v140.

Answer 1

Ваши условия выполнить невозможно.

MessageBox бежит не сам по себе, а в рамках какого-либо процесса. По завершению процесса все его потоки умирают, и система принудительно уничтожает все окна, принадлежащие процессу. Поэтому требование о том, чтобы другой процесс не запускался, немедленно означает, что диалоговое окно исчезнет с завершением процесса.

Рассматривая проблему прагматически, я бы отказался от требования одного процесса, и запустил бы однострочный скрипт на VBS:

MsgBox "Can't connect to server", 4096, "Error"

(запускать как cscript путь-к-файлу.vbs) Да, вам придётся таскать мелкий файл с собой, или создать его на лету во временном каталоге.

(Параметры для MsgBox описаны, например, здесь.)

READ ALSO
некорректная работа обработчика onClick для элементов TListBox (на андроид)

некорректная работа обработчика onClick для элементов TListBox (на андроид)

Создал элемент (item) в ListboxНазначил ему обработчик onClick

279
Почему не прерывается цикл while?

Почему не прерывается цикл while?

Не могу понять что не так, почему не срабатывает сравнение в цикле while?

284
Преобразование BMP в JPEG в памяти на C++

Преобразование BMP в JPEG в памяти на C++

Есть переменная LPBYTE Buffer, которая указывает на полноценный BMP файл, полученный в результате работы веб-камеры и кода формирования этого файла...

297
visual studio в virtual box

visual studio в virtual box

Здравствуйте, у меня такая проблемаПоставил на виртуалке windows7, в виртуалке задал настройку com1 порт ассоциировать как файл 1

295