GetExtendedTcpTable

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
raider
Начинающий
Начинающий
 
Сообщения: 3
Зарегистрирован: 04.02.2010 (Чт) 17:21

GetExtendedTcpTable

Сообщение raider » 04.02.2010 (Чт) 17:32

Доброго времени суток)
Помогите разобраться с API-функцией GetExtendedTcpTable.
Мне нужно знать какой процесс, к каким удаленным хостам подсоединены. Насколько я знаю, мне нужно использовать GetExtendedTcpTable, но вот разобраться с ней не могу. Помогите, плиз.

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: GetExtendedTcpTable

Сообщение Хакер » 04.02.2010 (Чт) 17:34

Помогите, плиз.

Благословляю тебя на успешное разбирательство с этой функцией.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

raider
Начинающий
Начинающий
 
Сообщения: 3
Зарегистрирован: 04.02.2010 (Чт) 17:21

Re: GetExtendedTcpTable

Сообщение raider » 04.02.2010 (Чт) 17:40

Попробовал сделать вот так:
Код: Выделить всё
Private Declare Function GetExtendedTcpTable _
                         Lib "Iphlpapi.dll" (pTcpTableEx As Any, _
                                             lSize As Long, _
                                             ByVal bOrder As Long, _
                                             ByVal Flags As Long, _
                                             ByVal TableClass As _
                                             TCP_TABLE_CLASS, _
                                             ByVal bReserved As Long) _


Public Enum TCP_TABLE_CLASS
  TCP_TABLE_BASIC_LISTENER
  TCP_TABLE_BASIC_CONNECTIONS
  TCP_TABLE_BASIC_ALL
  TCP_TABLE_OWNER_PID_LISTENER
  TCP_TABLE_OWNER_PID_CONNECTIONS
  TCP_TABLE_OWNER_PID_ALL
  TCP_TABLE_OWNER_MODULE_LISTENER
  TCP_TABLE_OWNER_MODULE_CONNECTIONS
  TCP_TABLE_OWNER_module_ALL
End Enum

Private Const AF_INET = 2

Private Sub Form_Load()
  Dim lngSize   As Long
  Dim nRet      As Long
  lngSize = 60

    nRet = GetExtendedTcpTable(0&, lngSize, 1, AF_INET, TCP_TABLE_OWNER_PID_ALL, 0)
End Sub

Почему-то выдаёт ошибку: "Bad DLL calling convention"
В чём дело?

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: GetExtendedTcpTable

Сообщение Хакер » 04.02.2010 (Чт) 17:49

В несоответствующем действительности типе возврата.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

raider
Начинающий
Начинающий
 
Сообщения: 3
Зарегистрирован: 04.02.2010 (Чт) 17:21

Re: GetExtendedTcpTable

Сообщение raider » 04.02.2010 (Чт) 18:23

При объявлении функции потерял "As Long" в самом конце.
Теперь вроде работает. Будем дальше разбираться.
Спасибо)


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: AhrefsBot и гости: 32

    TopList  
cron