Форум: "Сети";
Текущий архив: 2006.03.05;
Скачать: [xml.tar.bz2];
Вниз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;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.012 c