Показать сообщение отдельно
  #1  
Старый 25.05.2011, 09:06
ivborodin62 ivborodin62 вне форума
Прохожий
 
Регистрация: 25.05.2011
Сообщения: 2
Репутация: 10
По умолчанию Не могу разобраться с PID

(пишу правда на C, но это все равно)
Мне надо контролировать TCP соединения программы Merin.exe.
1.Написал функцию GetProcessByExeName, вызываю :
GetProcessByExeName(pid,"Merin.exe");
- получаю в переменной pid идентификатор процесса, совпадающий с тем
что выдает утилита Tcpview.exe, то есть верный.
2.С помощью функции GetExtendedTcpTable получаю таблицу TCP соединений :
GetExtendedTcpTable(tcp,&sz,FALSE,AF_INET,TCP_TABL E_OWNER_PID_ALL,0);
3.В цикле ищу свой pid :
Если tcp->table[i].dwOwningPid равен pid, то это мой Merin.exe
- и не нахожу его. То есть нахожу много других процессов, а Merin.exe
(обычная сетевая терминалка) отсутствует. Связана она по TCP со 127.0.0.1.
Может, неверные параметры у GetExtendedTcpTable ?
Ответить с цитированием