ProcessID zum ProcessName?



  • Jo burschen. Back again!

    So, ich habe herausgefunden dass es grundsätzlich möglich ist. Nun, ich hab des jetzt auf zwei verschiedenen Compilern probiert (MinGW und Borland C++), und auf beiden hat es nicht funktioniert. Ich rede hierbei von EnumProcesses, wie auf folgender Siete von der MSDN von Microsoft beschrieben:

    http://msdn.microsoft.com/library/default.asp?url=/library/en-us/perfmon/base/enumerating_all_processes.asp

    Nun, ich wollte wissen ob es eine einfachere Methode gibt, eine die eventuell auch am Borland C++ compiler funktioniert, bei der ich zu einem Prozessnamen die ProzessID herausfinden kann, bzw. ob es eine Methode gibt bei der ich direkt durch den Prozessnamen die Priorität des Prozesses verändern kann (bei SetPriorityClass benötige ich ja die PID)

    MfG
    STiAT aka Grabler Georg



  • was geben die compiler denn für eine fehlermeldung?



  • MinGW hat andere Probleme, mit den PriorityClasses, etwas was ich aber umbedingt benötige:

    ABOVE\_NORMAL\_PRIORITY_CLASS' undeclared (first use this function)BELOW_NORMAL_PRIORITY_CLASS' undeclared (first use this function)

    außerdem folgendes bei dem ENUM:
    C:\DOKUME1\STiAT\LOKALE1\Temp\cckXaaaa.o
    [Warning] In function PrintProcessNameAndID(unsigned long)': [Linker error] undefined reference toEnumProcessModules@16'
    [Linker error] undefined reference to GetModuleBaseNameA@16' [Linker error] undefined reference toEnumProcesses@12'

    BorlandCPP hat folgendes Problem bei dem Enumerating:
    > Executing: D:\Programme\ConTEXT\ConExec.exe "bcc32.exe" "enum_processes.cpp"

    Borland C++ 5.6 for Win32 Copyright (c) 1993, 2002 Borland
    enum_processes.cpp:
    Turbo Incremental Link 5.60 Copyright (c) 1997-2002 Borland
    Error: Unresolved external 'EnumProcesses' referenced from E:\WORK\CPP\PROJECTPRIORITY\ENUM_PROCESSES.OBJ
    Error: Unresolved external 'EnumProcessModules' referenced from E:\WORK\CPP\PROJECTPRIORITY\ENUM_PROCESSES.OBJ
    Error: Unresolved external 'GetModuleBaseNameA' referenced from E:\WORK\CPP\PROJECTPRIORITY\ENUM_PROCESSES.OBJ
    > Execution finished.

    Das Beispiel von M$ 1:1 kopiert 😞

    MfG STiAT

    [ Dieser Beitrag wurde am 02.01.2003 um 00:34 Uhr von STiAT editiert. ]



  • das sind ja bei beiden compilern nur linker fehler. die Psapi.lib muss dazu gelinkt werden. und für

    ABOVE\_NORMAL\_PRIORITY_CLASS' undeclared (first use this function)BELOW_NORMAL_PRIORITY_CLASS' undeclared (first use this function)

    vielleicht mal einen aktuellen mingw nehmen.



  • und wenn's da auch nicht bei ist

    #define BELOW_NORMAL_PRIORITY_CLASS 0x00004000
    #define ABOVE_NORMAL_PRIORITY_CLASS 0x00008000

    Aber das ganze Beispiel funktioniert ja sowieso nur ab der Windows NT Familie.



  • is für server gedacht, die laufen sowieso nur auf NT4 oder 2k

    aber der rest is trotzdem no interessant 🙂


Anmelden zum Antworten