Модератор: Модераторы
Снег Север писал(а):... и красноглазики-линуксойды.
Снег Север писал(а):В винде консолью пользуются только админы и красноглазики-линуксойды.
Дож писал(а):Что мешает написать приложение так, чтобы из него самопроизвольно не вылезала консоль?
$APPTYPE CONSOLE}
uses
Windows,
SysUtils;
function GetConsoleWindow: HWND; stdcall; external kernel32;
begin
try
Writeln('Press enter to hide console the window');
Readln;
//hide the console window
ShowWindow(GetConsoleWindow, SW_HIDE);
//do something
Sleep(5000);
Writeln('Press enter to exit');
//show the console window
ShowWindow(GetConsoleWindow, SW_SHOW);
Readln;
except
on E: Exception do
Writeln(E.ClassName, ': ', E.Message);
end;
end.
uses
JwaWinCon, Windows;
begin
writeln('12345');
ShowWindow(GetConsoleWindow, SW_HIDE);
writeln('222222222222222');
end.
ShowWindow(GetConsoleWindow, SW_HIDE);
А есть чёткие критерии, что нужно сделать чтобы она не вылезала?
В винде даже нельзя пнуть напрямую не запускающую бинарь команду в систему не запустив командный интерпретатор, который выведет на экран чёрное окошко.
Иногда программа должна перезапустить сама себя с определёнными ключами, сделать это проще всего послав команду в систему. А там и консоль вылезет.
У дельфистов таже проблема и кое-какая пилюля для этого есть:
Дож писал(а):Вызывать только те функции и программы, которые не создают своих терминалов.
Дож писал(а):Вам необходимы эти команды?
Дож писал(а):Я запускал, у меня не вылезает.
Дож писал(а):Вы в коде объявляете APPTYPE CONSOLE, чтобы сразу же скрыть эту самую консоль? Нельзя ли по-проще, ну там, APPTYPE GUI?
Это замечательно! Куча кода и куча зависимостей и теперь всех нужно проверять штангенциркулем на соответствие виндовой расе.
А заменять не прошедших отбор чем?
Хелловорды рулят и педалят. На оторванных от реальности примерах...
Я такого лично вообще не объявляю.
Дож писал(а):Если вы хотите, чтобы ваша программа работала в Windows без костылей
Дож писал(а):Вы выше написали "Хелловорд всегда глючит"
Дож писал(а):Лично вы нет, зато цитируете чужой код, который объявляет.
Это цитирование дано лишь для собирания всей необходимой информации в одном месте
Дож писал(а):Вы процитировали кривой костыль, которого не должно быть в правильно написанной программе. Так понятнее?
Вернуться в Free Pascal Compiler
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 9