Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   C: Konsolenfenster verstecken und zeigen (https://www.delphipraxis.net/23465-c-konsolenfenster-verstecken-und-zeigen.html)

Tubos 3. Jun 2004 16:09


C: Konsolenfenster verstecken und zeigen
 
Hallo;

ich möchte das Konsolenfenster bei einem reinen Konsolenprogramm verstecken.
Wie geht das am besten?

Durch
Code:
GetStdHandle(STD_OUTPUT_HANDLE)
kriegt man das Ausgabehandle.
Offenbar ist das aber nicht dasselbe wie das des ganzen Fensters, denn
Code:
ShowWindow(GetStdHandle(STD_OUTPUT_HANDLE),SW_HIDE);
nützt nichts.

Wie kriege ich das Handle des Fensters?
Und funktioniert das Verstecken auch, wenn man im Vollbild ist?

Danke!

neolithos 3. Jun 2004 16:56

Re: C: Konsolenfenster verstecken und zeigen
 
Warum nicht anders herum!

Mach ein Leeres Win32 Programm (nicht Konsole) und zeig sie dort bei bedarf an.

Tubos 3. Jun 2004 20:38

Re: C: Konsolenfenster verstecken und zeigen
 
Zitat:

Mach ein Leeres Win32 Programm (nicht Konsole) und zeig sie dort bei bedarf an.
Es geht mir aber darum, eine C-Funktion zu schreiben, die man in einem Konsolenprogramm verwenden kann.

MathiasSimmack 3. Jun 2004 20:41

Re: C: Konsolenfenster verstecken und zeigen
 
Konsolenfenster (NicoDE wird vermutlich gerade rotieren, weil ich den Begriff auch im Entwicklerforum schon mal benutzt habe ;)) hatten IMHO die Fensterklasse "tty".

Tubos 3. Jun 2004 20:52

Re: C: Konsolenfenster verstecken und zeigen
 
und was heißt das jetzt für mich? :-D
es wird doch wohl noch andere wege geben als mit findwindow?

_master_ 3. Jun 2004 21:16

Re: C: Konsolenfenster verstecken und zeigen
 
wenn es konsolen program ist dann
Delphi-Quellcode:
program myprog;
// {$APPTYPE CONSOLE} das in kommentaren und prog wird nicht angezeigt
begin
end;
also bei mir klappt es

neolithos 3. Jun 2004 21:21

Re: C: Konsolenfenster verstecken und zeigen
 
Das konsolen Fenster ist seltsames Fenster, welches Meineserachtens nicht unbedingt mit dem Konsolenprogramm verbunden sein muss.

Grund: Ich kann ja die Ausgabe auch in ein z.B. MemoFeld umleiten.

Also wäre selbst wenn du mittels FindWindow ein Fenster findest was passen könnte, es nicht sicher ob es auch wirklich zu dem Programm gehört.

Fazit: Es zu viele Gründe die Finger davon zu lassen!

Tubos 3. Jun 2004 21:40

Re: C: Konsolenfenster verstecken und zeigen
 
@master: danke, aber eigentlich wollte ich das in C schreiben

@neo: wahrscheinlich hast du recht...

NicoDE 3. Jun 2004 23:31

Re: C: Konsolenfenster verstecken und zeigen
 
Zitat:

Zitat von Tubos
Wie kriege ich das Handle des Fensters?

Ab Windows 2000 per GetConsoleWindow().
Bei allen anderen Windows-Versionen wirds eklig (FindWindow-Probleme: unterschiedliche Fenster-Klassennamen, möglicherweise (und damit laut Murphy wahrscheinlich) mehrere Fenster mit gleichem Titel, ...).
Zitat:

Zitat von Tubos
Und funktioniert das Verstecken auch, wenn man im Vollbild ist?

Gute Frage, IIRC ist das ein eigener Anzeige-Modus - und dürfte somit zumindest schwieriger werden...

ps@mathias: so schlimm ist es auch wieder nicht, zumindest weiss jeder was gemeint ist :)


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:58 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz