prozess suchen

Anfängerfragen zum Programmieren mit PureBasic.
mx03
Beiträge: 47
Registriert: 29.09.2006 22:44

prozess suchen

Beitrag von mx03 »

hi wie kann ich einen prozess ohne namen sondern nur durch die bestimmten eigenschaften suchen
denn wenn ich die datei notepad.exe in notepad3.exe umänder findet er den prozess ja nicht mehr
Benutzeravatar
Kiffi
Beiträge: 10714
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Re: prozess suchen

Beitrag von Kiffi »

Hat das Programm ein Fenster mit einer Titelzeile?
Dann könnte man danach suchen.

Grüße ... Kiffi
a²+b²=mc²
Benutzeravatar
mk-soft
Beiträge: 3855
Registriert: 24.11.2004 13:12
Wohnort: Germany

Beitrag von mk-soft »

Brauchst warscheinlich dann den Classname

Code: Alles auswählen

Procedure FindAllWindow()

  WindowName.s
  ClassName.s
  temp.s
 
  hwnd = GetWindow_(WindowID(0),#GW_HWNDFIRST)
  *buffer = AllocateMemory(16384)
  While hwnd
    len = GetWindowText_(hwnd,*buffer, 16384)
    WindowName = PeekS(*buffer, len)
    len = GetClassName_(hwnd , *buffer, 16384)
    ClassName = PeekS(*buffer, len)
    temp = WindowName + " - " + ClassName
    Debug temp
    hwnd = GetWindow_(hwnd,#GW_HWNDNEXT)
  Wend

EndProcedure
FF :wink:
Alles ist möglich, fragt sich nur wie...
Projekte ThreadToGUI / EventDesigner V3 / OOP-BaseClass-Modul
Downloads auf MyWebspace / OneDrive
Benutzeravatar
AND51
Beiträge: 5220
Registriert: 01.10.2005 13:15

Beitrag von AND51 »

Diese Methode find ich nicht so gut. Die Frage ist ja nach den div. Prozessen, da können 2x Notepd beispielsweise den gleichen Fenstertitel haben und man unterschätzt die Verwechslungsgefahr. Außerdem hat ja nicht jeder Prozess ein Fenster, sondern vielleicht mehrere oder gar keines, und, und, und...

Besser wäre hier EnumProcess_(). Ich vermute, er funktioniert ähnlich wie EnumWindows_(), aber ich habe den Process-Befehl noch nie benutzt.

Hilft das weiter?
PB 4.30

Code: Alles auswählen

Macro Happy
 ;-)
EndMacro

Happy End
Antworten