AGB  ·  Datenschutz  ·  Impressum  







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

Child Process ID

Ein Thema von sensei2 · begonnen am 6. Sep 2009 · letzter Beitrag vom 6. Sep 2009
Antwort Antwort
sensei2

Registriert seit: 9. Mai 2009
5 Beiträge
 
#1

Child Process ID

  Alt 6. Sep 2009, 15:56
Hallo,
ich starte ein Programm mit CreateProcess und lasse mir ProcessID bzw. ThreadID zurückgeben.
Wie kann ich die ProccesIDs bzw. ThreadIDs von Programmen ermitteln, die das mit CreateProcess gestartete Programm gestartet hat? (Also die Child Prozesse)
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke
Online

Registriert seit: 10. Jun 2003
Ort: Berlin
9.345 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Child Process ID

  Alt 6. Sep 2009, 16:06
Via WMI kannst du alle Prozesse auf den Parent-Prozess prüfen, wenn der mit deinem gestarteten übereinstimmt, wurde das Programm von diesem gestartet.

Problematisch wird es an der Stelle, wenn ein Prozess nicht mehr läuft und die ID neu vergeben wird. Damit muss man ggf. rechnen.
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
  Mit Zitat antworten Zitat
sensei2

Registriert seit: 9. Mai 2009
5 Beiträge
 
#3

Re: Child Process ID

  Alt 6. Sep 2009, 16:10
mit welcher Funktion geht das?

Edit:
hab es hier gefunden: http://www.delphipraxis.net/internal...ct.php?t=99486
  Mit Zitat antworten Zitat
Benutzerbild von Wolfgang Mix
Wolfgang Mix

Registriert seit: 13. Mai 2009
Ort: Lübeck
1.222 Beiträge
 
Delphi 2005 Personal
 
#4

Re: Child Process ID

  Alt 6. Sep 2009, 16:25
BTW: Erstmal herzlich willkommen in der DP

Gruß

Wolfgang
Wolfgang Mix
if you can't explain it simply you don't understand it well enough - A. Einstein
Mein Baby:http://www.epubli.de/shop/buch/Grund...41818516/52824
  Mit Zitat antworten Zitat
Benutzerbild von Zacherl
Zacherl

Registriert seit: 3. Sep 2004
4.629 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#5

Re: Child Process ID

  Alt 6. Sep 2009, 17:22
Am besten injizierst du eine DLL in deinen Child Prozess, welche alle CreateProcess Aufrufe hookt. Damit bekommst du sicher alle Child PIDs und Handles mit.
  Mit Zitat antworten Zitat
Apollonius

Registriert seit: 16. Apr 2007
2.325 Beiträge
 
Turbo Delphi für Win32
 
#6

Re: Child Process ID

  Alt 6. Sep 2009, 19:51
Ich würde den Kindprozess mit MSDN-Library durchsuchenAssignProcessToJobObject in einen Job stecken. Alle "Nachkommen" eines Prozesses in einem Job sind im selben Job. Mit MSDN-Library durchsuchenQueryInformationJobObject lassen sich dann alle Prozess-IDs auflisten.
Wer erweist der Welt einen Dienst und findet ein gutes Synonym für "Pointer"?
"An interface pointer is a pointer to a pointer. This pointer points to an array of pointers, each of which points to an interface function."
  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 13:55 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