[Gelöst] Programm startet Conhost. Warum?

Für Fragen zur Programmiersprache auf welcher Lazarus aufbaut
Antworten
Benutzeravatar
Swirl
Beiträge: 51
Registriert: Fr 7. Aug 2015, 14:05
OS, Lazarus, FPC: win mac linux / jeweils aktuell
CPU-Target: x86_64, ARM Cort.-A7
Wohnort: Schwerte

[Gelöst] Programm startet Conhost. Warum?

Beitrag von Swirl »

Hallo,

habe ein Projekt vom Windows 10 PC auf ein Windows 10 Tablet übernommen.
Wenn ich das Programm starte, ruft es die Konsole (conhost) auf. Dabei ist es
unerheblich, ob das Programm aus der IDE, oder die .exe direkt gestartet wird.
Auf dem PC startet das Programm ohne die Konsole.
Hat jemand eine Idee, woran das liegen könnte - und/oder ob man das abstellen
kann/darf?

Gruß,
Michael
Zuletzt geändert von Swirl am Mo 15. Jul 2019, 13:56, insgesamt 1-mal geändert.
Arbeite mit Lazarus 2.0.8 - FPC 3.0.4 auf Win/Linux
Spiele mit Lazarus auf macOS 10.14 (Mojave)

Warf
Beiträge: 1474
Registriert: Di 23. Sep 2014, 17:46
OS, Lazarus, FPC: MacOS | Win 10 | Linux
CPU-Target: x86_64
Wohnort: Aachen

Re: Conhost

Beitrag von Warf »

Normalerweise müsste lazarus dir ja den Code so generieren das keine Konsole angezeigt wird (das ist in windows etwas komisch, du kannst die konsole per hand ein und auschalten, es gibt aber auch irgendwie die möglichkeit zur compilezeit die konsole auszuschalten), und da es auf deinem Windows normal funktioniert würde ich schätzen das Lazarus wie erwartet arbeitet. Eventuell benötigt Win10 für Tablets eine andere Methode?

Versuch doch mal die Konsole per hand auszuschalten wie hier: Link. Ist zwar C++, aber die WinAPI funktionen gibts bei Lazarus ja auch in der Windows unit (Mir ist aufgefallen das bei sowas nach C++ zu suchen oft bessere ergebnisse liefert als Lazarus oder Delphi zu googlen)

Benutzeravatar
fliegermichl
Lazarusforum e. V.
Beiträge: 619
Registriert: Do 9. Jun 2011, 09:42
OS, Lazarus, FPC: Winux (L 2.0.7 FPC 3.04)
CPU-Target: 32/64Bit
Wohnort: Echzell

Re: Programm startet Conhost. Warum?

Beitrag von fliegermichl »

Ist denn unter Projekt -> Projekteinstellungen -> Konfiguration und Ziele die Option Win32-Gui-Anwendung (-WG) aktiviert? Dann sollte keine Konsole erscheinen.

Benutzeravatar
Swirl
Beiträge: 51
Registriert: Fr 7. Aug 2015, 14:05
OS, Lazarus, FPC: win mac linux / jeweils aktuell
CPU-Target: x86_64, ARM Cort.-A7
Wohnort: Schwerte

Re: Programm startet Conhost. Warum?

Beitrag von Swirl »

Erstmal besten Dank Ihr Beiden...
»Projekt -> Projekteinstellungen -> Konfiguration und Ziele die Option Win32-Gui-Anwendung (-WG) aktiviert?« war der Hinweis, der zur Lösung des Problems geführt hat.
Und zusätzlich Asche auf mein Haupt - ich hatte nämlich vergessen mitzuteilen,
dass ich vom PC zum Tablet den Umweg über meinen Mac genommen hatte.
Und da fehlte dann auch prompt der Haken gemäßt fliegermichls Kommentar.
Den habe ich gesetzt und prompt gings.
Spaß macht das Ganze dann aber doch nicht, denn wie Warf noch im Juni sagte...
Benutz kein lazarus für OSX. Sobald deine anwendung komplizierter als eine Form
mit ein paar Buttons und Inputs wird, fliegt dir alles um die Ohren.

...fliegt mir das jetzt um die Ohren. Zumindest im Hinblick auf »write once - compile
anywhere«.
Beim Mac ist es zwar ziemlich anstrengend, dass der Ojektinspektor so sein Eigenleben
hat (z.B.: Änderung von Werten bei Ansprung eines Editfeldes, oder einer ungefragten
Änderung eines Dropdowns). Oder dass Anchors sich selbst zuordnen und alles am Ende
aneinander pappt und bei der Größenänderung einer Form sich alles dehnt und verschiebt.
Usw.Usw. Am Ende lief aber mein kleines »Mastermind« - quasi als Fingerübung für die Kids.
Das Problem zeigte sich aber dann richtig, als ich den Quellcode auf das Tablet portiert
hatte. Der Mac hatte ein par echte Kneggen im Code hinterlassen, so z.B. dass die Werte,
die im Objektinspektor zu sehen waren, andere waren als die,die man in der lfm.Datei
sehen konnte. Und eben »fehlende Haken« wie oben bemerkt. usw.
Zum Schluss möchte ich noch betonen, dass ich das oben Gesagte auf keinen Falls als
Kritik an Lazarus verstehen möchte. Was sich so unter der Obefläche von Mac's Darwin so
tummelt und durch Updates verändert wird, kann dann auch kein Entwickler riechen.
Wie gesagt - besten Dank und Gruß,
Michael
Arbeite mit Lazarus 2.0.8 - FPC 3.0.4 auf Win/Linux
Spiele mit Lazarus auf macOS 10.14 (Mojave)

Antworten