AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi Prozess beenden und wieder starten
Thema durchsuchen
Ansicht
Themen-Optionen

Prozess beenden und wieder starten

Ein Thema von oXmoX · begonnen am 19. Jan 2006 · letzter Beitrag vom 19. Jan 2006
Antwort Antwort
oXmoX

Registriert seit: 8. Jun 2005
85 Beiträge
 
#1

Prozess beenden und wieder starten

  Alt 19. Jan 2006, 18:04
Hallo!

Hier mein (Anfänger-)Problem: Ich würde gerne einen laufenden Prozess beenden, dessen Exe-Namen ich kenne. Danach soll die gerade beendete Anwendung wieder neu gestartet werden. Ich kenne nur den Exe-Namen des Prozesses, nicht den Ort der Exe-Datei.

Kann jemand helfen?
  Mit Zitat antworten Zitat
Benutzerbild von ManuMF
ManuMF

Registriert seit: 11. Jul 2005
1.016 Beiträge
 
Delphi 6 Personal
 
#2

Re: Prozess beenden und wieder starten

  Alt 19. Jan 2006, 18:06
Beenden eines Prozesses:

Delphi-Quellcode:
function KillTask(const AExeName: string): boolean;
var
  p: TProcessEntry32;
  h: THandle;
begin
  Result := false;
  p.dwSize := SizeOf(p);
  h := CreateToolHelp32Snapshot(TH32CS_SnapProcess, 0);
  try
    if Process32First(h, p) then
      repeat
        if AnsiLowerCase(p.szExeFile) = AnsiLowerCase(AExeName) then
          Result := TerminateProcess(OpenProcess(Process_Terminate,
                                                 false,
                                                 p.th32ProcessID),
                                     0);
      until (not Process32Next(h, p)) or Result;
  finally
    CloseHandle(h);
  end;
end;
Um ein Programm zu starten, ist Hier im Forum suchenShellExecute geeignet.

Wenn du den Pfad nicht kennst, musst du ihn aber irgendwie vorher auslesen.

Gruß,
ManuMF
Gruß,
ManuMF

Endlich hab ich was Positives an Vista entdeckt: Das mitgelieferte Mahjongg
  Mit Zitat antworten Zitat
oXmoX

Registriert seit: 8. Jun 2005
85 Beiträge
 
#3

Re: Prozess beenden und wieder starten

  Alt 19. Jan 2006, 18:09
Zitat von ManuMF:
Wenn du den Pfad nicht kennst, musst du ihn aber irgendwie vorher auslesen.
Genau so hab ich mir das auch schon gedacht ...ich dachte nur, es geht evtl. auch etwas geschickter.

Jetzt suche ich aber immernoch nach einer Möglichkeit, den Pfad herauszufinden.

Edit:
Okay, auf die Gefahr einer Verwarnung hin kokretisier ich mal mein Problem (auch wenn das dann am Thema vorbei ist): Der Prozess, der neu gestartet werden soll ist die Anwendung ICQ 5. Vielleicht kann mir ja jemand sagen, sie ich den Installationspfad ermittle ...in der Registry bin ich noch nicht fündig geworden.
  Mit Zitat antworten Zitat
Antwort Antwort


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 00:36 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