![]() |
Re: Programm vor Taskmanager verstecken
@DevilsCamp: Was steht im OnCreate Ereigis des Formulars?
Zeig mal... |
Re: Programm vor Taskmanager verstecken
Delphi-Quellcode:
In der Taskleiste ist es verschwunden, aber wie schon gesagt weiterhin per ALT-TAB auswählbar...
procedure TForm1.FormCreate(Sender: TObject);
begin mdown := false; ShowWindow( Application.Handle, SW_HIDE ); SetWindowLong( Application.Handle, GWL_EXSTYLE, GetWindowLong(Application.Handle, GWL_EXSTYLE) or WS_EX_TOOLWINDOW and not WS_EX_APPWINDOW); ShowWindow( Application.Handle, SW_SHOW ); end; |
Re: Programm vor Taskmanager verstecken
s14, das gehort nicht ins FormCreate. Zu diesem Zeitpunkt muss nicht notwendigerweise ein Fenster vorhanden sein und es ist durchaus moeglich das das Fenster spaeter gegen ein neues ausgewechselt wird.
|
Re: Programm vor Taskmanager verstecken
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:
|
Re: Programm vor Taskmanager verstecken
Zitat:
|
Re: Programm vor Taskmanager verstecken
Ich habe den Fehler.
Das Icon, das bei Alt-Tab angezeigt wird, gehört zum MainForm. Ich muss also auch das MainForm (in diesem Fall Form1) verstecken:
Delphi-Quellcode:
So funktioniert es...
procedure TForm1.FormCreate(Sender: TObject);
begin mdown := false; Timer1.Enabled := True; end; procedure TForm1.Timer1Timer(Sender: TObject); begin Timer1.Enabled := false; ShowWindow( Application.Handle, SW_HIDE ); SetWindowLong( Application.Handle, GWL_EXSTYLE, GetWindowLong(Application.Handle, GWL_EXSTYLE) or WS_EX_TOOLWINDOW and not WS_EX_APPWINDOW); ShowWindow( Application.Handle, SW_SHOW ); ShowWindow( Handle, SW_HIDE ); SetWindowLong( Handle, GWL_EXSTYLE, GetWindowLong(Handle, GWL_EXSTYLE) or WS_EX_TOOLWINDOW and not WS_EX_APPWINDOW); ShowWindow( Handle, SW_SHOW ); end; |
Re: Programm vor Taskmanager verstecken
Ist der Timer den wirklich nötig?
Würde es nicht reichen den Constructor zu überschreiben? FormCreate wird ja irgendwo dazwischen aufgerufen.... |
Re: Programm vor Taskmanager verstecken
Ich habe aber erst ein Handle auf das Fenster, NACHDEM es erstellt wurde. Und nicht schon vorher...
|
Re: Programm vor Taskmanager verstecken
Zitat:
|
Re: Programm vor Taskmanager verstecken
Zitat:
Delphi-Quellcode:
Nachtrag: @Ollie: Jenau! :)
constructor TSomeForm.Create(AOwner: TComponent);
begin inherited; // OnCreate würde noch *im* Constrcutor // des Vorgängers (TCustomForm) aufgerufen werden // somit wird alles nach inherited auch nach OnCreate // und somit nach allem Fenstergedönst aufgerufen ShowWindow(Application.Handle, SW_HIDE); SetWindowLong(Application.Handle, GWL_EXSTYLE, GetWindowLong(Application.Handle, GWL_EXSTYLE) or WS_EX_TOOLWINDOW and not WS_EX_APPWINDOW); ShowWindow(Application.Handle, SW_SHOW); ShowWindow(Handle, SW_HIDE); SetWindowLong(Handle, GWL_EXSTYLE, GetWindowLong(Handle, GWL_EXSTYLE) or WS_EX_TOOLWINDOW and not WS_EX_APPWINDOW); ShowWindow(Handle, SW_SHOW); end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:54 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz