Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Anwendung vollständig verstecken (https://www.delphipraxis.net/60726-anwendung-vollstaendig-verstecken.html)

konda 11. Jan 2006 16:46


Anwendung vollständig verstecken
 
hallo,
mal ne Frage, kann man eine Anwendung so programmieren das sie völlig versteckt läuft, also das weder in der Start leiste etwas zu sehen ist noch ihm Taskmanager? :gruebel:

jim_raynor 11. Jan 2006 17:02

Re: Anwendung vollständig verstecken
 
Wozu?

Kevin 11. Jan 2006 17:05

Re: Anwendung vollständig verstecken
 
Ist zwar keine Antwort, lag mir aber auch auf der Zunge. Solche Nachfragen finde ich immer sehr suspekt, sorry...

Ferber 11. Jan 2006 17:08

Re: Anwendung vollständig verstecken
 
Wurde ausserdem bereits diskutiert.

robinWie 11. Jan 2006 17:16

Re: Anwendung vollständig verstecken
 
Ich habe mal dass Hier gefunden
Delphi-Quellcode:
private
  procedure WMSysCommand(var msg: TWMSysCommand); message WM_SysCommand;

procedure TMainForm.WMSysCommand(var msg: TWMSysCommand);
begin
  if msg.CmdType and $FFF0 = SC_MINIMIZE then
    hide
  else
    inherited;
end;

procedure TMainForm.FormShow(Sender: TObject);
var
  hwndOwner: HWnd;
begin
  hwndOwner := GetWindow(Handle, GW_OWNER);
  ShowWindow(hwndOwner, SW_HIDE);
  // For Windows 2000, additionally call the ShowWindowAsync function:
  ShowWindowAsync(hwndOwner, SW_HIDE);
  //Form is invisible, too
  ShowWindowAsync(Self.Handle, SW_HIDE);
  //Form is show
  ShowWindowAsync(Self.Handle, SW_SHOW);
end;
[edit] Damit ist das Programm in der Taskleiste und im TaskManager versteckt, jedoch der Prozess wird immer noch angezeigt [/edit]

Luckie 11. Jan 2006 17:52

Re: Anwendung vollständig verstecken
 
Zitat:

Zitat von robinWie
jedoch der Prozess wird immer noch angezeigt [/edit]

Um mal eine Politiker zu ziteiren:
Zitat:

Und das ist auch gut so.
Warum soll der Anwender nicht wissen, dass dein Programm läuft? Nenn mir einen trifftigen Grund.

robinWie 11. Jan 2006 18:07

Re: Anwendung vollständig verstecken
 
@ Luckie:
Das der Prozess noch angezeigt wird finde ich ja gut weil wenn der mal abschmiert kann man ihn noch beenden. Ich das mal bei einem Programm von mir ausgestattet damit es nicht "im Weg" ist, es wird aber stattdessen als TrayIcon angezeigt. Sinnvoll ist das auch bei Programmen die z. B. irgendwas überwachen und nicht weiter auffallen wollen.

@ all:
Ich hoffe keiner wird den von mir zur verfügung gestellten Code ausnutzen um Programm zu erstellen die z.B. System Dateien löschen oder den Computer sonstwie beschädigen und diese Programme desshalb nicht angezeigt werden sollen. Ich persönlich finde es Albern Vieren zu programmieren.

[edit] @ Konda: du solltest dein Programm dann auch als TrayIcon anzeigen lassen [/edit]

Luckie 11. Jan 2006 18:14

Re: Anwendung vollständig verstecken
 
Ich bezog mich darauf:
Zitat:

jedoch der Prozess wird immer noch angezeigt
womit wohl die Prozessliste unter NT ff. vom Taskmanager gemeint ist.

konda 12. Jan 2006 11:48

Re: Anwendung vollständig verstecken
 
keine angst, ich will kein virus programmieren. ich hab nur so nen kleines info programm und das soll nicht einzeln in der startliste aufgelistet sein. das mit dem taskmanager ist rein aus interesse, weil unter der kategorie prozesse mindestens 20 prozesse aufgelistet sind, aber dazu keine programme angezeigt werden und da hat es mich interessiert ob das irgendwie zu machen ist. :angel:

Der Code übrigens klappt perfekt :thumb:

Nakor 13. Apr 2006 23:35

Re: Anwendung vollständig verstecken
 
Zitat:

Delphi-Quellcode:
private
  procedure WMSysCommand(var msg: TWMSysCommand); message WM_SysCommand;

procedure TMainForm.WMSysCommand(var msg: TWMSysCommand);
begin
  if msg.CmdType and $FFF0 = SC_MINIMIZE then
    hide
  else
    inherited;
end;
[edit] Damit ist das Programm in der Taskleiste und im TaskManager versteckt, jedoch der Prozess wird immer noch angezeigt [/edit]
Nachdem ich nun schon einige Zeit hier nur mitlese, habe ich jetzt auch mal eine Frage:

Aber erstmal: Hallo an alle!

Ich habe den obigen Code auch in einem meiner Programme verwendet. Das Programm verschwindet nur vernünftig aus der Taksbar, wenn ich es über den "Minimiere"-Button oben rechts verkleinere. Wenn ich versuche das Programm über einen Klick auf den Programmeintrag in der Taskbar zu verkleinern, wird zwar das Programmfenster minimiert, der Eintrag in der Taskbar bleibt aber erhalten.

Hat da noch jemand einen Hinweis für mich, wie ich diesen Schönheitsfehler wegbekomme?


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:51 Uhr.
Seite 1 von 2  1 2      

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