Ścieżka do procesu

0

Mój problem wygląd następująco: Posiadając PID chcialbym uzyskac ścieżkę do pliku wykonawczego, który odpowiada za dany proces. Szukałem już w róznych źródłach, jednak sposoby które znalazłem są koszmarnie skomplikowane, a chciałbym rozumieć co piszę. Gdyby ktoś mógłby pomóc w rozwiązaniu byłby wdzieczny.

Język: C
Kompilator: Dev

0

wnikales kiedys co tak wlasciwe znajduje sie w tym pseudo systemie plikow /proc? tworzone sa tam przez jadro miedzyinnymi katalogi ktorych nazwa odpowiada numerowi PID danego procesu, w katalogu tym znajduje sie miedzy innymi symlink do pliku wykonywalnego.

0
bcn napisał(a)

wnikales kiedys co tak wlasciwe znajduje sie w tym pseudo systemie plikow /proc? tworzone sa tam przez jadro miedzyinnymi katalogi ktorych nazwa odpowiada numerowi PID danego procesu, w katalogu tym znajduje sie miedzy innymi symlink do pliku wykonywalnego.

zapomnialem dodac, ze ten symlink nazywa sie "exe" :)

0

Wybacz zapomnialęm dodać ze OS: winXP. Symlinki chyba tylko na Linux'ie?

0
havi napisał(a)

Wybacz zapomnialęm dodać ze OS: winXP. Symlinki chyba tylko na Linux'ie?

aaa.. to zmienia postac rzeczy, myslalem, ze chodzi o UNIX'a jakiegos:)

0

GetModuleFileName/GetModuleFileNameEx lub GetProcessImageFileName

0
ŁF napisał(a)

GetProcessImageFileName

#include <tlhelp32.h>
#include <PsAPI.h>
#include <windows.h>

`GetProcessImageFileName' undeclared (first use this function)

Dziwna sytuacja.Czy coś jeszcze poza psapi trzeba dołączyć?

0
bcn napisał(a)
havi napisał(a)

Wybacz zapomnialęm dodać ze OS: winXP. Symlinki chyba tylko na Linux'ie?

aaa.. to zmienia postac rzeczy, myslalem, ze chodzi o UNIX'a jakiegos:)

tak na boku.. na widowsach na partycjach typu NTFS tez mozna robic symlinki. tylko .. jest to "schowane" i trzeba sobie sciagnac programik z sysinternals :)

0
GetModuleFileName(GetModuleHandle("kernel32.dll") , sciezka, 100);

Działa prawidłowo. Jesli jednak próbuje wpisać inny proces to uzyskuje ścieżkę do włąsnego pliku wykonawczego. W jaki sposób dokonać korekty, aby np. uzyskać ścieżkę do gg.exe itp?

OK - problem rozwiązany.

1 użytkowników online, w tym zalogowanych: 0, gości: 1