Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Eigenes Programm - Taskliste (https://www.delphipraxis.net/144171-eigenes-programm-taskliste.html)

schwa226 1. Dez 2009 22:57


Eigenes Programm - Taskliste
 
Hi,

ich habe hier eine kleine Frage zu der Taskliste (Taskmanager->Anwendungen) (nicht Taskleiste!)

Ich habe eine Anwendung die ich in der Taskliste nicht anzeigen möchte.
In den Prozessen (Taskmanager->Prozesse) kann sie ganz normal drinnen bleiben - egal.
So halt wie ein Service, jedoch mit Form. Also geht das mit dem SW_HIDE ja auch nicht da ansonsten meine Form ja nicht sichtbar ist.

Hab hierzu nicht viel gefunden und das meiste war nur für Win9x.
Bräuchte halt Hilfe für WinXP aufwärts.

Die Methode RegisterServiceProcess geht ja anscheinend auch nicht mehr.

Auch sollte sie bei ALT-Tab, was ja die gleiche Liste ist nicht drinnen sein.
Auch dazu habe ich noch nichts richtiges gefunden :|

Oder wie müsste meine Anwendung aufgebaut sein um so etwas machen zu können?

Luckie 2. Dez 2009 00:05

Re: Eigenes Programm - Taskliste
 
Gegenfrage: Warum darf sie nicht in der Taskliste auftauchen?

uoeb7gp 2. Dez 2009 00:08

Re: Eigenes Programm - Taskliste
 
Hallo schwa226!

Application.ShowMainForm := False; ist dein Freund!

Dies ist der Standard Weg um Delphi GUI Applikationen aus dem Taskmanager zu entfernen.

Delphi-Quellcode:
program Project1;

uses
  Forms,
  Unit1 in 'Unit1.pas' {Form1};

{$R *.res}

begin
  Application.Initialize;
  Application.ShowMainForm := False;
  Application.CreateForm(TForm1, Form1);
  Application.Run;
end.
Du erwähntest RegisterServiceProcess.
Dieser macht unter W9x den zugehörigen Prozess vollkommen unsichtbar.
Ist natürlich eine erhebliche Sicherheitslücke.

Dies ist mit dementsprechendem "know how" auch unter NT basierenden OS möglich.

User Mode basierende Rootkits gibt es ja wie Sand am Meer.

Aber den Prozess willst du ja eh nicht verstecken.

Ja, Ja die Frage von Luckie hat was!!!

lg.

Luckie 2. Dez 2009 00:12

Re: Eigenes Programm - Taskliste
 
Zitat:

Zitat von uoeb7gp
Ja, Ja die Frage von Luckie hat was!!!

Ich ärger mich nämlich immer, wenn ein Programm nicht in der Taskliste auftaucht und es im Hintergrund verschwindet. Dann kommt man an das Fenster nämlich nur, wenn man alle Fenster minimiert. :evil:

schwa226 2. Dez 2009 07:48

Re: Eigenes Programm - Taskliste
 
Soll ein Shell-Ersatz werden. Also so wie die explorer.exe.
Da ist es natürlich nicht von Vorteil wenn die Anwendung in der Tasklist auftaucht.
Per Prozesse kann man sie ja dann trotzdem noch abschießen.

Wär halt Professioneller wenn die Shell-App selber nicht in der Tasklist drinnen wär.

Delphi-Quellcode:
Application.ShowMainForm := False;
Dann ist es wie ein Service.
Wie bekomme ich dann aber eine sichtbare Form ohne das sie in der Taskliste auftaucht?

schwa226 2. Dez 2009 12:35

Re: Eigenes Programm - Taskliste
 
Habe jetzt noch irgendwo gelesen, dass es als DLL gehen sollte.

D.h. die EXE ist durch ShowMainForm nicht sichtbar. Diese ladet eine DLL die dann die Form beinhaltet.
Leider zeigt es mir aber bei den ersten Versuchen die Form dann trotzdem in der Taskliste an.

Kann mir da jemand helfen?

himitsu 2. Dez 2009 12:45

Re: Eigenes Programm - Taskliste
 
Zitat:

Zitat von schwa226
D.h. die EXE ist durch ShowMainForm nicht sichtbar. Diese ladet eine DLL die dann die Form beinhaltet.
Leider zeigt es mir aber bei den ersten Versuchen die Form dann trotzdem in der Taskliste an.

klar, die Form gehört ja dennoch zur Applikation und darum zeigt Windows es an.

Zitat:

Zitat von schwa226
Habe jetzt noch irgendwo gelesen, dass es als DLL gehen sollte.

wenn du die DLL in etwas anderes injezierst, welches schon eine Form hat und daher deine Form nicht extra angezeigt wird ... z.B. als "Addon" in den Explorer, dann sollte es gehn.

Luckie 2. Dez 2009 14:15

Re: Eigenes Programm - Taskliste
 
Dann trag dein Programm als Shell in der Registry ein.

schwa226 2. Dez 2009 15:46

Re: Eigenes Programm - Taskliste
 
Es ist bereits als Shell eingetragen.

Trotzdem ist es im ALT-TAB Fenster und Taskmanager.

Habe gerade deinen Thread entdeckt: http://www.delphipraxis.net/internal...=886381#886381

Jedoch geht das bei mir (gerade XP SP3) und D2009 nicht!?

Es kommt keine Messagebox. Habe nur PChar zu PAnsiChar geändert:
Zitat:

Project: CreateRemoteThread
⌐ Michael Puff
http://www.michasel-puff.de

This program demonstrates how to inject code into a remote process.
The injector application (Injector.exe) injects the MsgBox.dll into
notepad.exe. The injected DLL just displays a messagebox that shows
the module filename of the module that runs the code.

DLL injected...

Medium 2. Dez 2009 15:53

Re: Eigenes Programm - Taskliste
 
Ich kann mich auch irren, aber meine Alt-Tab Liste zeigt mir u.a. den "Desktop", also das unterste Shell-Fenster quasi an, und auch meine Prozessliste führt "Explorer.exe", der sich auch abschießen lässt. Oder verwechsel ich gerade die Shell mitm Explorer? :gruebel:


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:24 Uhr.
Seite 1 von 2  1 2      

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 by Thomas Breitkreuz