Delphi-PRAXiS
Seite 2 von 4     12 34      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Programm vor Taskmanager verstecken (https://www.delphipraxis.net/49912-programm-vor-taskmanager-verstecken.html)

DevilsCamp 18. Jul 2005 11:46

Re: Programm vor Taskmanager verstecken
 
Zitat:

Zitat von Olli
Er will nämlich offenbar nicht den Prozess, sondern vielmehr das Anwendungsfenster verstecken.

RICHTIG, der Kandidat hat 100 Punkte. Das meinte ich sogar.


Da wir nun geklärt haben, dass ich die Überschrift etwas unglücklich gewählt habe ;), hat einer von euch nun eine Lösung?

@Olli:
Dein Code funktioniert bei mir nicht.

Delphi-Quellcode:
@_RegisterServiceProcess := GetProcAddress(hLib, 'RegisterServiceProcess');
Liefert mir immer ein:
@_RegisterServiceProcess = nil


:(

Olli 18. Jul 2005 11:51

Re: Programm vor Taskmanager verstecken
 
Zitat:

Zitat von DevilsCamp
Zitat:

Zitat von Olli
Er will nämlich offenbar nicht den Prozess, sondern vielmehr das Anwendungsfenster verstecken.

RICHTIG, der Kandidat hat 100 Punkte. Das meinte ich sogar.


Da wir nun geklärt haben, dass ich die Überschrift etwas unglücklich gewählt habe ;), hat einer von euch nun eine Lösung?

Bitte etwas Geduld. Habe nur 2 Hände, 1 Tastatur und 1 Monitor ... da hilft auch kein multitaskingfähiges Gehirn, wenn der I/O nicht stimmt. ;)

Zitat:

Zitat von DevilsCamp
Dein Code funktioniert bei mir nicht.

Delphi-Quellcode:
@_RegisterServiceProcess := GetProcAddress(hLib, 'RegisterServiceProcess');
Liefert mir immer ein:
@_RegisterServiceProcess = nil

Doch tut er. Sehr gut sogar. Der Code muß nil zurückliefern - du arbeitest nämlich auf Windows 2000 wo diese Funktion garnicht aus Kernel32.dll exportiert wird. Rufe einfach meine Wrapperfunktion auf und du kannst dir sicher sein, daß dein Code portabel zwischen Windows 9x/Me und NT4/2K/XP ist.

Die Lösung des anderen Problems kommt, wie gesagt, gleich.

s14 18. Jul 2005 11:52

Re: Programm vor Taskmanager verstecken
 
Hallo Olli,

probier mal:

Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin
  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;

Olli 18. Jul 2005 12:00

Re: Programm vor Taskmanager verstecken
 
Zitat:

Zitat von s14
probier mal:

*grrr* ... Frechheit :mrgreen: ... sowas auch :mrgreen: . Da will man es gerade posten und dann sowas. :mrgreen:
Püh, ich stell mich jetzt in die Ecke und schmolle :mrgreen:

@Marc: Sowas in der Art meinte ich.

arbu man 18. Jul 2005 12:11

Re: Programm vor Taskmanager verstecken
 
Zitat:

Zitat von Olli
Er will nämlich offenbar nicht den Prozess, sondern vielmehr das Anwendungsfenster verstecken.

Wenn es das ist was du willst dann plaziere diesen Code in der fromshow

Delphi-Quellcode:
ShowWindow(GetWindow(Handle,GW_OWNER),SW_HIDE);
Und dein Fenster taucht in der taskleiste nicht mehr auf.

runger 18. Jul 2005 12:15

Re: Programm vor Taskmanager verstecken
 
Hi Olli,

den letzten Satz hast du aber gelesen?

Rainer ( ich liebe es wenn sich jemand so aufregt )

DevilsCamp 18. Jul 2005 12:29

Re: Programm vor Taskmanager verstecken
 
Zitat:

Zitat von arbu man
Zitat:

Zitat von Olli
Er will nämlich offenbar nicht den Prozess, sondern vielmehr das Anwendungsfenster verstecken.

Wenn es das ist was du willst dann plaziere diesen Code in der fromshow

Delphi-Quellcode:
ShowWindow(GetWindow(Handle,GW_OWNER),SW_HIDE);
Und dein Fenster taucht in der taskleiste nicht mehr auf.

Das weiß ich selber.

Aber ich möchte das Fenster auch noch aus der Alt-TAB-Liste entfernen.
Man soll es zwar per Maus anklicken und beenden können (FormStyle steht auf fsStayOnTop) aber nicht per Alt-TAB auswählen können...

Olli 18. Jul 2005 12:57

Re: Programm vor Taskmanager verstecken
 
Zitat:

Zitat von arbu man
Delphi-Quellcode:
ShowWindow(GetWindow(Handle,GW_OWNER),SW_HIDE);
Und dein Fenster taucht in der taskleiste nicht mehr auf.

Dann ist das Form aber auch wech ;) ... er will nur keinen Eintrag in der Taskleiste und beim Task umschalten. Das geht wie oben von s14 beschrieben.

DevilsCamp 18. Jul 2005 13:00

Re: Programm vor Taskmanager verstecken
 
Zitat:

Zitat von Olli
er will nur keinen Eintrag in der Taskleiste und beim Task umschalten. Das geht wie oben von s14 beschrieben.

Bei mir funktioniert das irgendwie nicht...

Olli 18. Jul 2005 13:04

Re: Programm vor Taskmanager verstecken
 
Hi Rainer,

Zitat:

Zitat von runger
den letzten Satz hast du aber gelesen?

Rainer ( ich liebe es wenn sich jemand so aufregt )

Na logo. Und da ich eine angeregte Diskussion liebe, habe ich dennoch meine Gründe dargelegt ...
Ich lese jeden Monat Titanic und Eulenspiegel ... bin also "Kummer" gewohnt *g* :mrgreen:

@Marc: Ich schaue mal eben nochmal über deinen Code. Habe selber W2K, sollte also reproduzierbar sein ;)

Gruß,


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:54 Uhr.
Seite 2 von 4     12 34      

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