hehe, so allm?hlich flie?en immer mehr Anwenderw?nsche ein. Auch wenn ich pers?nlich wohl nicht allzu viel mit Konsolenanwendungen machen werde, finde ich es trotzdem klasse, wie schnell hier reagiert wird.
Merci bi?ng Gernot
wenn jetzt auch noch irgendwann das Entitysystem weiter ausgebaut und in den Standard-Befehlsumfang integriert wird, falle ich hier glatt jemandem zu F??en :)
Jow klasse Ding!
Kann man super gebrauchen, sogar f?r Wrapper usw, zum Debugen :)
Sehr sehr sehr.... sehr geil :D
Ja stimmt, nur m?sste das mit dem Rotationen nochmal ?berdacht werden! Sonst goil :D
was meinst du mit "Rotationen ?berdenken". Die finde ich so ok. Oder was meinst du speziell?
ARGHHHHHHHHHHHHHHHHHHHHH ich bekomm einen Hirnschlag :good:
Danke Gernot, das ist ech ein Geiles Feature :good:
F?r mich der gerne mal das eine oder andere kleine Tool schreibt ist das echt genial.
Da GLB f?r sowas richtig leicht zu haben ist, und jetzt in einer Konsolenanwendung.
Ich grieg mich garnicht mehr ein :)
Juhuuuuu. :nw: :nw: :happy:
So, gleich mal erstes Feedback.
Habe aus meinem UT2k4 Cachemanager alle Print in STDOUT gewandelt und Grafikbefehle Auskommenteirt.
Siehe da, es ist sofort gelaufen :)
Kleine sch?nheitskorrektur:
1. Die konsolenanwendung wird gestartet, wartet aber auf ein "Return/Eingabe" erst dann gehts los.
Kann man das umgehen?
2. Blackscreen gibt ja nicht mehr (ist ja kein GL Fenster),
gibts da mal einen ersatzt -> CLS ?
3. Ich weis, klingt schon fast unversch?mt :whistle:
Konsolenfenster verstecken (Stiller ablauf im Hintergrund)
4. Die Exe wird ja ?ber die h?lfte kleiner :good:
5. GLB ist echt Gut, aber das hier macht es in meinen Augen richtig Professionell
So, werds mal weiter Testen, bzw. am Wochenende.
Muss bald in die Falle- Fr?hschicht.
zu 2) Habs noch nicht probiert, aber kann man cls nicht einfach ?ber INLINE system("CLS"); ENDINLINE machen
zu 3) Wenn das funktioniert geht unsichtbar ?ber:
char Titel[50];
HWND hWnd = NULL;
GetConsoleTitleA(Titel, 50);
hWnd = FindWindowA(NULL, Titel);
ShowWindow(hWnd, SW_HIDE);
Sry wenn's nicht geht, hab noch nie INLINE in GLB gemacht, aber in cpp geht`s...
@Gernot, update is auf jedefall 1A :good:
Das ist ja cool. So hab' ich das noch nie gemacht. Konsolenfensterverstecken. Lol
HWND hwnd = GetConsoleWindow();
ShowWindow(hwnd,SW_HIDE);
Danke allen, auch f?r das neueste Update.
So, bin einfach ein INLINE Depp.
Ich habe mal versucht das so umzusetzen, aber wie soll auch anders sein bei mir,
es geht mal wieder nicht.
FUNCTION foo: /// Die muss ja erstellt werden foo oder winniePuhh....
ENDFUNCTION
INLINE
char Titel[50]; // ein Character Array f?r 50 Zeichen ?!
HWND hWnd = NULL; // Variable von Type HWND
GetConsoleTitleA(Titel, 50); // Denn Consolentitel ins Array Schreiben ?
hWnd = FindWindowA(NULL, Titel); // das Handle f?r den Consolentitel finden und ausgeben
ShowWindow(hWnd, SW_HIDE); // Das Programm mit diesem Handle ausblenden
ENDINLINE
STDOUT i+"\n"
SLEEP 100
INC i,1
STDOUT i+"\n"
SLEEP 2000
FOR i = 0 TO 10000
STDOUT i+"\n"
SLEEP 50
NEXT
ShowWindow(GLBASIC_HWND(), SW_HIDE);
Die Funktion ShowWindow wirst du Wrappen m?ssen aus der User32.dll.
SW_HIDE = 0
Viel spass :)
OK, hier mal alles was Du willst: Konsolentitel lesen und Fenster verstecken.
ACHTUNG!
Ohne das Fenster sichtbar, muss man das Programm mit dem Taskmanager abschie?en, wenn man es nicht intern beendet!
[edit]
N?chste Version wird das Konsolenfenster als GLBASIC_HWND() liefern.
STDOUT GetTitle$() + "\n"
STDOUT i+"\n"
SLEEP 100
ShowConsole(FALSE)
INC i,1
STDOUT i+"\n"
SLEEP 2000
ShowConsole(TRUE)
FOR i = 0 TO 20
STDOUT i+"\n"
SLEEP 50
NEXT
KEYWAIT
FUNCTION foo: /// Die muss ja erstellt werden foo oder winniePuhh....
ENDFUNCTION
INLINE
} // namespace zumachen
// Deklaration der Funktion (sonst kennt die der Compiler nicht)
extern "C" unsigned long __stdcall GetConsoleTitleA(char*, unsigned long);
extern "C" HWND __stdcall GetConsoleWindow(void);
extern "C" long __stdcall ShowWindow(void*, int);
#define SW_HIDE 0
#define SW_SHOWNORMAL 1
namespace __GLBASIC__ { // wieder aufmachen
ENDINLINE
FUNCTION GetTitle$:
INLINE
char Titel[512]; // ein Character Array f?r 50 Zeichen ?!
HWND hWnd = NULL; // Variable von Type HWND
GetConsoleTitleA(Titel, 511); // Denn Consolentitel ins Array Schreiben ?
return DGStr(Titel);
ENDINLINE
ENDFUNCTION
FUNCTION ShowConsole: bShow%
INLINE
HWND hWnd = GetConsoleWindow();
ShowWindow(hWnd, bShow ? SW_SHOWNORMAL : SW_HIDE);
ENDINLINE
ENDFUNCTION
Coole Sache :good: Danke Gernot.
Hmm hat die Console kein normales HWND bzw. das GLBASIC_HWND()?
Ist das nicht ein wenig komisch?
nein hats nich, wenn ich xors mit konsole compilieren w?rde, kommt konsolenfenster, noch lustiger wirds dannach, wenn ich den haken da wieder weg nehme.
dann geht fast nix mehr.
dann kommt trotzdem noch das glb fenster und ich muss es wegklicken, damit xors startet.lol.
Ja danke *im ruhm sonn* daanke *freu*
*blumen aufheb*
:D