Скрытие консоли в виндовс

Вопросы программирования на Free Pascal, использования компилятора и утилит.

Модератор: Модераторы

Re: Скрытие консоли в виндовс

Сообщение Alex2013 » 12.10.2019 16:41:49

Снег Север писал(а):Линух явно вредно влияет на психику...

Не сам Линукс а долгое медитативное зависание в консоле без запуска иксов... Призрак ЭНИАК-а изыди! :idea:
А сам по себе Линукс совершенно безвреден...
Изображение
"Клянусь моей треуголкой !"(С)Барон Мюнхгаузен :idea: :D
Alex2013
долгожитель
 
Сообщения: 2924
Зарегистрирован: 03.04.2013 11:59:44

Re: Скрытие консоли в виндовс

Сообщение Сквозняк » 12.10.2019 18:48:26

Снег Север писал(а):
Сквозняк писал(а):которой в качестве основной пользуются рабы Билли и его заместителей

:roll:
Линух явно вредно влияет на психику... :mrgreen:


Похоже вы с Дожем одни виндузятники из фреепаскалистов остались, потому как на 64-битный вантуз лазарус и фпц перенесены на отцепись - сплошные глюки и нестандартное поведение скомпиленного кода. Чтоже вы под свою "идеальную" ОС компилятор не допиливаете?
Сквозняк
энтузиаст
 
Сообщения: 1109
Зарегистрирован: 29.06.2006 22:08:32

Re: Скрытие консоли в виндовс

Сообщение Alex2013 » 12.10.2019 21:19:25

Винду недолюбливаю но более универсальной платформы сейчас просто нет . ( Особенно в свете моего увлечения ВР и ДР) .
1 Линкус хорош для Сети (и отчасти программирования ).
2 Мак ОС в дизайне .
3 Андроид не плох для мобильных платформ .

И только Винда универсальна . + это единственная нативно-игровая платформа для ПС ( Что мелочь но приятно)
Конкретно для программирования это единственная платформа про которую можно не спрашивать подробностей у заказчиков софта.
Нижний уровень WinXP 32 верхний Win10 64 . И можно уверенно сказать, что так будет еще лет десять ( но и после современный софт вполне можно будет запустить )

А все прочие ? (Кроме Мак ОС но где же найти заказчиков на заказной софт для МакОси ? ) :idea:

GUI Софт для Линукс обычно "гарантированно живет" в пределах определенного дистрибутива . Но среди них нет ни одного что-бы можно было уверенно сказать, что он будет "в добром здравии" через пять лет.

Про андроид заранее нельзя сказать вообще ничего "гарантийный срок работы" андроид-софта один год (кто-то скажет у меня десять лет программа работает.. да бывает и так.... но обычно это или на одном железе или пределах одной версии ОС. ).
Alex2013
долгожитель
 
Сообщения: 2924
Зарегистрирован: 03.04.2013 11:59:44

Re: Скрытие консоли в виндовс

Сообщение Сквозняк » 12.10.2019 23:04:24

Alex2013 писал(а):А все прочие ? (Кроме Мак ОС но где же найти заказчиков на заказной софт для МакОси ? ) :idea:


Вот потому и необходимо портирование из среды разработки в винду. А в 64 бит винде - веселуха на веселухе. Только что обнаружил что sysutils.fileopen ведёт себя не так как раньше при открытии несуществующего файла - просто сегфолт устраивает. Значит нужно по всему коду лепить затычки чтобы не доводить до действия вызывающего баг.
Сквозняк
энтузиаст
 
Сообщения: 1109
Зарегистрирован: 29.06.2006 22:08:32

Re: Скрытие консоли в виндовс

Сообщение Снег Север » 13.10.2019 06:18:31

sysutils.fileopen ведёт себя не так как раньше при открытии несуществующего файла - просто сегфолт устраивает

Да, тяжка жизнь рукож...пых халтурщиков... :mrgreen:
Аватара пользователя
Снег Север
долгожитель
 
Сообщения: 2993
Зарегистрирован: 27.11.2007 16:14:47

Re: Скрытие консоли в виндовс

Сообщение Сквозняк » 14.10.2019 05:42:46

Снег Север писал(а):
sysutils.fileopen ведёт себя не так как раньше при открытии несуществующего файла - просто сегфолт устраивает

Да, тяжка жизнь рукож...пых халтурщиков... :mrgreen:


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

Древняя маздайная проблема, которая вылезла при сопряжении 32 и 64 битных версий...
https://www.freepascal.org/docs-html/rtl/sysutils/feinvalidhandle.html
https://bugs.freepascal.org/view.php?id=23343
Сквозняк
энтузиаст
 
Сообщения: 1109
Зарегистрирован: 29.06.2006 22:08:32

Re: Скрытие консоли в виндовс

Сообщение Дож » 14.10.2019 11:45:48

Древняя маздайная проблема, которая вылезла при сопряжении 32 и 64 битных версий...
https://www.freepascal.org/docs-html/rt ... andle.html
https://bugs.freepascal.org/view.php?id=23343

По ссылкам нет микросовтовских проблем. Был баг в FPC RTL (поведение двух функций не соответствовало документации), который исправили 6 лет назад.

Сквозняк, в этой теме вас уже много раз поймали на вранье. Все проблемы не в винде, а в вашем подходе -- вы не умеете читать документации, поэтому заслуженно страдаете.
Аватара пользователя
Дож
энтузиаст
 
Сообщения: 899
Зарегистрирован: 12.10.2008 16:14:47

Re: Скрытие консоли в виндовс

Сообщение mig-31 » 14.10.2019 18:46:49

Alex2013 писал(а):Винду недолюбливаю но более универсальной платформы сейчас просто нет . ( Особенно в свете моего увлечения ВР и ДР) .

Уже нет, вся домашняя электроника(телевизоры, холодильники, стиралки), роутеры, IOT, машины, многие устройства автоматизации (постепенно WINCE заменяют на Linux например в HMI) на Linux.
Единственное место, где Windows еще доминирует это десктоп и А-игры. Благодаря Steam и на Linux есть во что поиграть.

Alex2013 писал(а):GUI Софт для Линукс обычно "гарантированно живет" в пределах определенного дистрибутива . Но среди них нет ни одного что-бы можно было уверенно сказать, что он будет "в добром
здравии" через пять лет.

Не молите чушь. Это не так, даже древний GTK2+ есть в любом современном дистрибутиве и даже Motif. Даже очень старая программа Grace с GUI на Motif для построения научных графиков работает.
Если хочется без изменений так есть RHEL, CentOS 20 лет поддержки.

Дож писал(а):Все проблемы не в винде, а в вашем подходе -- вы не умеете читать документации, поэтому заслуженно страдаете

А в винде не все документировано.
mig-31
постоялец
 
Сообщения: 224
Зарегистрирован: 14.07.2011 13:46:48

Re: Скрытие консоли в виндовс

Сообщение Снег Север » 14.10.2019 19:50:17

mig-31 писал(а):А в винде не все документировано

Интересно узнать, что именно. :mrgreen:
Аватара пользователя
Снег Север
долгожитель
 
Сообщения: 2993
Зарегистрирован: 27.11.2007 16:14:47

Re: Скрытие консоли в виндовс

Сообщение Сквозняк » 14.10.2019 23:35:55

Дож писал(а):
Древняя маздайная проблема, которая вылезла при сопряжении 32 и 64 битных версий...
https://www.freepascal.org/docs-html/rt ... andle.html
https://bugs.freepascal.org/view.php?id=23343

По ссылкам нет микросовтовских проблем. Был баг в FPC RTL (поведение двух функций не соответствовало документации), который исправили 6 лет назад.

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


А вот врать не надо. В виндовой версии фпц тянут совместимость с кодом ориентированным на древние баги. Это ваше "исправление" - чистой воды фикция и цирк с конями. Нужно много тестировать чтобы после этого исправления построить в винде работоспособный код.
Конечно, запрограммировали такую штуку
Код: Выделить всё
const feInvalidHandle: THandle = THandle(- 1);


А как эту -1 получать, если функция возвращает то 4294967295, то 18446744073709551615 ? Получить -1 можно если устроить переполнение переменной при присваивании ею значения, что не при всех опциях компиляции возможно. И вы предлагаете всю программу собирать с опциями позволяющими такое безобразие? Тем более, что в вин64 переполнять надо переменную типа int64, а в вин32 - longint. То есть испорти отладку глюков в программе и всё равно получи цирк с конями. Уж лучше так в коде константу писать:
Код: Выделить всё
CONST
{$IFDEF WIN32}
VINDOFAILOBAG=4294967295;
{$ENDIF WIN32}
{$IFDEF WIN64}
VINDOFAILOBAG=18446744073709551615;
{$ENDIF WIN64}
{$IFDEF LINUX}
VINDOFAILOBAG=-1;
{$ENDIF LINUX}

Если код будет компилиться под другую платформу, то компилятор сразу просигнализирует: слышь, начальника, в твоём коде совсем нету описания виндофайлобага, моя дальше работать отказывается, пошёл чай пить.

Добавлено спустя 4 часа 24 минуты 54 секунды:
Можно и так писать:
Код: Выделить всё
uses
JwaWinCon, Windows;

begin
ShowWindow(GetConsoleWindow, SW_SHOWMINIMIZED);
end.

Констант много, какая из них лучше всех впишется в решение, ещё не протестировал.
Код: Выделить всё
// ShowWindow() Commands
//

  SW_HIDE            = 0;
  {$EXTERNALSYM SW_HIDE}
  SW_SHOWNORMAL      = 1;
  {$EXTERNALSYM SW_SHOWNORMAL}
  SW_NORMAL          = 1;
  {$EXTERNALSYM SW_NORMAL}
  SW_SHOWMINIMIZED   = 2;
  {$EXTERNALSYM SW_SHOWMINIMIZED}
  SW_SHOWMAXIMIZED   = 3;
  {$EXTERNALSYM SW_SHOWMAXIMIZED}
  SW_MAXIMIZE        = 3;
  {$EXTERNALSYM SW_MAXIMIZE}
  SW_SHOWNOACTIVATE  = 4;
  {$EXTERNALSYM SW_SHOWNOACTIVATE}
  SW_SHOW            = 5;
  {$EXTERNALSYM SW_SHOW}
  SW_MINIMIZE        = 6;
  {$EXTERNALSYM SW_MINIMIZE}
  SW_SHOWMINNOACTIVE = 7;
  {$EXTERNALSYM SW_SHOWMINNOACTIVE}
  SW_SHOWNA          = 8;
  {$EXTERNALSYM SW_SHOWNA}
  SW_RESTORE         = 9;
  {$EXTERNALSYM SW_RESTORE}
  SW_SHOWDEFAULT     = 10;
  {$EXTERNALSYM SW_SHOWDEFAULT}
  SW_FORCEMINIMIZE   = 11;
  {$EXTERNALSYM SW_FORCEMINIMIZE}
  SW_MAX             = 11;
  {$EXTERNALSYM SW_MAX}
Сквозняк
энтузиаст
 
Сообщения: 1109
Зарегистрирован: 29.06.2006 22:08:32

Re: Скрытие консоли в виндовс

Сообщение Снег Север » 15.10.2019 08:11:26

Надо были мне как-то портировать из винды в линух небольшую программку на лазарусе. Она обращалась в интернет и ей требовался SSL. В винде просто кладешь рядом с экзешником две дллки и не знаешь проблем. В линухе надо устанавливать SSL в систему! Это же просто идиотизм! Но я потратил пару лишних часов и установил, а не бегал с выпученными глазами по форумам с воплями: "Ах этот дерьмовый линукс!".
Аватара пользователя
Снег Север
долгожитель
 
Сообщения: 2993
Зарегистрирован: 27.11.2007 16:14:47

Re: Скрытие консоли в виндовс

Сообщение Сквозняк » 15.10.2019 10:15:44

Снег Север писал(а):Надо были мне как-то портировать из винды в линух небольшую программку на лазарусе. Она обращалась в интернет и ей требовался SSL. В винде просто кладешь рядом с экзешником две дллки и не знаешь проблем. В линухе надо устанавливать SSL в систему! Это же просто идиотизм! Но я потратил пару лишних часов и установил, а не бегал с выпученными глазами по форумам с воплями: "Ах этот дерьмовый линукс!".

Во первых, ты поступил как юзверь - поставил какаху в систему. А был бы программистом, использовал бы как браузер именно закинутую в каталог с программой SSL. В линуксе мало закинуть либу в каталог, надо ещё твою программу к ней подключить, потому что прога не ищет либы по умолчанию в текущем каталоге. Там всё заставляют ставить в систему, а ты не ставь:) Распакованные из архива мозилообразные заходят на такой сайт, куда git с системной SSL не конектится, то есть на гитхаб :mrgreen: В этих браузерах SSL свои.

А во вторых, ты решал вопрос на одном конкретном линуксе, а не на всех, в том числе на тех, у которых в репозитории нужной тебе версии SSL нету. Вот как ты скажешь своему заказчику: меня не волнует что у тебя такой либы нет, отформатируй диск, поставь убунту и моя чудопрога у тебя заработает!
Сквозняк
энтузиаст
 
Сообщения: 1109
Зарегистрирован: 29.06.2006 22:08:32

Re: Скрытие консоли в виндовс

Сообщение Снег Север » 15.10.2019 10:51:10

Сквозняк, мне похрен страдания всех линуксовских юзеров с их зоопарком несовместимых пакетов, я программу ставил под свои нужды на нужную мне систему.
Аватара пользователя
Снег Север
долгожитель
 
Сообщения: 2993
Зарегистрирован: 27.11.2007 16:14:47

Re: Скрытие консоли в виндовс

Сообщение Сквозняк » 15.10.2019 15:41:50

А раз ставишь программы в одном экземпляре, то чего тогда возмущаешься, когда я собираю её для кучи вантузятников на куче разных вантузов? Заметь, программа уже давно в консоль общается и выпиливать фичу ради вантузятников, которые туда не будут смотреть, глупо. Свернуть консоль и все дела. Тем более что для сворачивания константа существует, которую ты не подсказал.
Сквозняк
энтузиаст
 
Сообщения: 1109
Зарегистрирован: 29.06.2006 22:08:32

Re: Скрытие консоли в виндовс

Сообщение Снег Север » 15.10.2019 15:55:59

А вот в винде программа работающая под ХР будет, в 99.99% случаев, работать и под десяткой. Без ваших шаманских плясок с бубнами вокруг пакетов. Записал на диск - и работает. А 0.01% связаны с использованием разработчиком хаков. В чём таким разработчикам никто не доктор.
Аватара пользователя
Снег Север
долгожитель
 
Сообщения: 2993
Зарегистрирован: 27.11.2007 16:14:47

Пред.След.

Вернуться в Free Pascal Compiler

Кто сейчас на конференции

Сейчас этот форум просматривают: Google [Bot] и гости: 24

Рейтинг@Mail.ru