Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.03.05;
Скачать: CL | DM;

Вниз

PID процесса   Найти похожие ветки 

 
[ S.F.I.N.X ] ©   (2005-11-19 13:25) [0]

Уважаемые мастера

Мне необходимо определить pid процессов которые установили соединения с сетью . Порты и адреса у меня получилось а вот с pid нет, может может кто -нибудь помочь?


 
BiN ©   (2005-11-21 11:08) [1]

В XP есть недокументированная ф-я  AllocateAndGetTcpExTableFromStack, примеры использования которой есть у гугля и, кажется, у Розыча.

В 2000-м же больше гемора: по сути дела описатели сокетов представлены как и описатели объектов ядра в таблице описателей и имеют тип "file" и имя "Afd\Endpoint". Получив содержимое таблицы хэндлов с помощью NtQuerySystemInformation (SystemHandleInformation, ...) и отобрав нужные тебе описатели (здесь тебе понадобится NtQueryObject), дублируем их с помощью DuplicateHandle, чтобы затем получить адрес и порт (см.getsockname). При этом вопрос соответствия UID-ов процессов и хэндлов отпадает на этапе получения таблицы хэндлов.

Надеюсь, не очень запутанно. -)



Страницы: 1 вся ветка

Текущий архив: 2006.03.05;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.05 c
2-1139770997
LordOfRock
2006-02-12 22:03
2006.03.05
Вопрос по классам. Вылезает Abstract Error


2-1140361582
Volf_555
2006-02-19 18:06
2006.03.05
Как перевести цвет из TColorBox в строку?


3-1137070389
UnDISCOvery
2006-01-12 15:53
2006.03.05
Запрос SQL к Access - как ускорить работу?


15-1139377623
DimonS
2006-02-08 08:47
2006.03.05
Опять вопросик про фотопечать.


1-1138624394
passer
2006-01-30 15:33
2006.03.05
Есть ли в моей программе несколько одновременных потоков?