Seite 1 von 1

prozess suchen

Verfasst: 02.10.2006 18:52
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

Re: prozess suchen

Verfasst: 02.10.2006 19:56
von Kiffi
Hat das Programm ein Fenster mit einer Titelzeile?
Dann könnte man danach suchen.

Grüße ... Kiffi

Verfasst: 02.10.2006 20:04
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:

Verfasst: 02.10.2006 20:21
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?