AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

wie hartnaeckige anwendung killen?

Ein Thema von o0o · begonnen am 6. Okt 2007 · letzter Beitrag vom 6. Okt 2007
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von o0o
o0o

Registriert seit: 20. Jul 2007
Ort: am...,da wo die sonne nicht scheint!
166 Beiträge
 
Delphi 2007 Enterprise
 
#1

wie hartnaeckige anwendung killen?

  Alt 6. Okt 2007, 13:30
hi leutz,...fuer meine individuellen beduerfnisse wollte ich mal so ne art taskmanager entwickeln der mehrere task's und prozesse beendet, zb wenn ich zoggen will dass zb die firewall,antivirus,firefox,...geclosed werden per klick.

mein aktueller code:
Delphi-Quellcode:
function KillProcess(const ExeName: String): Boolean;
var
  Prozess : TProcessEntry32;
  h : THandle;

begin
  Result := False;
  Prozess.dwSize := SizeOf(Prozess);
  h := CreateToolHelp32Snapshot(TH32CS_SNAPPROCESS, 0);
  try
   If Process32First(h, Prozess) then
    Repeat
     If AnsiLowerCase(Prozess.szExeFile) = AnsiLowerCase(ExeName) then Result := TerminateProcess(OpenProcess(Process_Terminate, False, Prozess.th32ProcessID), 0);
    Until (Not Process32Next(h, Prozess)) or Result;
  finally
   CloseHandle(h);
  end;
end;



procedure TForm1.Button1Click(Sender: TObject);
var
   Handle: HWND;
begin
   Handle := FindWindow('avp', nil);
   if Handle <> 0 then
      SendMessage(Handle, WM_CLOSE, 0, 0);
end;
also bei dem grossteil meiner anwendungen gibt es keine probs mit dem closen, nur mein kaspersky will nich.

hat jemand vllcht eine idee wie ich soein task killen kann?^^

waere sehr ueber hilfe dankbar...da o0o
(_/marabu-fan inside\_)
[-\_______________/-]
  Mit Zitat antworten Zitat
brechi

Registriert seit: 30. Jan 2004
823 Beiträge
 
#2

Re: wie hartnaeckige anwendung killen?

  Alt 6. Okt 2007, 13:53
Wäre schlimm wenns so einfach gehen würde.
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#3

Re: wie hartnaeckige anwendung killen?

  Alt 6. Okt 2007, 13:53
Der Prozess dürfte als Dienst laufen. Dienste kann man nicht so einfach "abschiessen", die muss man mit Administratorenrechten über die Diensteverwaltung beenden.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#4

Re: wie hartnaeckige anwendung killen?

  Alt 6. Okt 2007, 13:56
Hallo,

ich kenne die Kaspersky Antiviren-Software nicht, aber ich vermute dass der Hersteller deinen Ansatz als Attacke eines Viren-Kits kennt, wogegen er sich zu schützen weiß. Hinzu kommt, dass dein Betriebssystem Alarm schlagen sollte, wenn der registrierte Virenschutz deaktiviert wurde. Wenn du es tatsächlich hinkriegst den AV-Schutz abzuschießen, dann veröffentliche den Code bitte nicht hier.

Nachdenkliche Grüße
  Mit Zitat antworten Zitat
Benutzerbild von o0o
o0o

Registriert seit: 20. Jul 2007
Ort: am...,da wo die sonne nicht scheint!
166 Beiträge
 
Delphi 2007 Enterprise
 
#5

Re: wie hartnaeckige anwendung killen?

  Alt 6. Okt 2007, 14:29
Zitat:
Wenn du es tatsächlich hinkriegst den AV-Schutz abzuschießen, dann veröffentliche den Code bitte nicht hier.
ehm ok in die negative richtung hab in der hinsicht noch garnicht gedacht
aber naja hast recht, viele wuerden liebend gerne unfug damit bauen

btw hat vllcht jemand ne idee bzw nen kleinen schupser in welche richtung ich googln muss um mein problem in den griff zu bekommen?

thx iom vorraus...da o0o
(_/marabu-fan inside\_)
[-\_______________/-]
  Mit Zitat antworten Zitat
Benutzerbild von xZise
xZise

Registriert seit: 3. Mär 2006
Ort: Waldbronn
4.303 Beiträge
 
Delphi 2009 Professional
 
#6

Re: wie hartnaeckige anwendung killen?

  Alt 6. Okt 2007, 14:33
Naj Laut Process Explorer haben alle avp Prozesse keine Threads Und wo nichts ist, kann man auch nichts abschießen

MfG
xZise
Fabian
Eigentlich hat MS Windows ab Vista den Hang zur Selbstzerstörung abgewöhnt – mkinzler
  Mit Zitat antworten Zitat
sk0r

Registriert seit: 1. Mai 2007
181 Beiträge
 
Delphi 7 Enterprise
 
#7

Re: wie hartnaeckige anwendung killen?

  Alt 6. Okt 2007, 14:37
Zitat von xZise:
Naj Laut Process Explorer haben alle avp Prozesse keine Threads Und wo nichts ist, kann man auch nichts abschießen

MfG
xZise
Nanu, ich dachte jede Executable hat mindestens einen Thread, den Hauptthread. Habe ich etwas verpasst?

@Topic: Vielleicht kann man ja im Ring0 Modus was hinbekommen... ^^
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#8

Re: wie hartnaeckige anwendung killen?

  Alt 6. Okt 2007, 14:39
Moin Zusammen,

Zitat von Luckie:
...die muss man mit Administratorenrechten über die Diensteverwaltung beenden.
oder per Konselenprogramm Net

Net Stop zum Anhalten, Net start zum, Überraschung, Starten eines Dienstes.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Benutzerbild von o0o
o0o

Registriert seit: 20. Jul 2007
Ort: am...,da wo die sonne nicht scheint!
166 Beiträge
 
Delphi 2007 Enterprise
 
#9

Re: wie hartnaeckige anwendung killen?

  Alt 6. Okt 2007, 14:40
Zitat:
Naj Wink Laut Process Explorer haben alle avp Prozesse keine Threads Wink Und wo nichts ist, kann man auch nichts abschießen Smile
ehm naja eigendlich soll man doch jedes programm iwi schliessen koennen,...oder liege ich mit der annahme falsch?^^

btw ist es moeglich dass die zb die threads iwi verstecken?

o0o
(_/marabu-fan inside\_)
[-\_______________/-]
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#10

Re: wie hartnaeckige anwendung killen?

  Alt 6. Okt 2007, 18:18
Moin oOo,

im Prinzip sollte sich jede Anwendung auch beenden lassen.
Sei es durch ein WM_CLOSE, wie Du es ja machst, oder, ggf., mittels WM_QUERYENDSESSION, um dem Programm ein Beendigen der Windows-Session vorzugaukeln, was es dann dazu veranlassen sollte sich zu beenden.
Bei Diensten musst Du sie halt über die entsprechenden API-Funktionen (als Einstieg: MSDN-Library durchsuchenOpenSCManager) stoppen.

Was ich prinzipiell vermeiden würde ist TerminateProcess, da der Prozess dann keine Möglichkeit mehr hat aufzuräumen.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:17 Uhr.
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