Форум — Ответы ( К темам )
? | Master: Консоль (23-03-2003 09:59:55) http://MaDkr.narod.ru/ |
Как сделать консольное окно невидемым (при использовании цикла)? | |
Павел (26-03-2003 22:50:57) | |
Это окно все равно является окном Windows Нужно получить его дескриптор и послать ему сообщение стать невидимым Есть подобный вопрос/ответ в разделе FAQ, правда на Паскале, но понять можно Вопрос: Как получить дескриптора окна Window, сожержащего DOS программу или программу консольного режима? Ответ: В следуещем примере используется функция Windows API FindWindow(). Обратите внимание, что WndClass консольного окна отличаются для Windows 95 и Window NT и заголовок окна может содержать полный путь под Windows NT. Пример: procedure TForm1.Button1Click(Sender: TObject); var info : TOSVersionInfo; ClassName : string; Title : string; begin {Проверяем — Win95 или NT.} info.dwOSVersionInfoSize := sizeof(info); GetVersionEx(info); if (info.dwPlatformId = VER_PLATFORM_WIN32_NT) then begin ClassName := 'ConsoleWindowClass'; Title := 'Command Prompt'; end else begin ClassName := 'tty'; Title := 'MS-DOS Prompt'; end; ShowMessage(IntToStr(FindWindow(PChar(ClassName), PChar(Title)))); end; |