Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Работа с сетью в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.06.2010, 07:03   #1
Horus92
Форумчанин
 
Аватар для Horus92
 
Регистрация: 04.05.2009
Сообщений: 147
По умолчанию IPHLPAPI.DLL в windows 7

У меня такая проблема в программе используются функции AllocateAndGetTcpExTableFromStack и AllocateAndGetUdpExTableFromStack а в windows 7 при компиляции вылазит ошибка:
Цитата:
Точка входа в процедуру AllocateAndGetUdpExTableFromStack не найдена в библиотеке DLL IPHLPAPI.DLL
Подскажите пожалуйста на что заменены эти функции в windows 7
Horus92 вне форума Ответить с цитированием
Старый 15.06.2010, 09:55   #2
Horus92
Форумчанин
 
Аватар для Horus92
 
Регистрация: 04.05.2009
Сообщений: 147
По умолчанию

Нашел мне надо использовать GetExtendedTCPTable попробовал
но почему-то возвращает результат ошибки.
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
  Size: DWORD;
  TCPExTable: PTMibTCPExTable;
  UDPTable: PTMibUdpExTable;
  I: DWORD;
  hProcessSnap: THandle;
begin
 hProcessSnap := CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
  if (hProcessSnap = INVALID_HANDLE_VALUE) then
  begin
    Memo1.Lines.Add('');
    Memo1.Lines.Add('CreateToolhelp32Snapshot failed');
    Exit;
  end;

  GetMem(TCPExTable, Size);
  try

    if GetExtendedTcpTable(TCPExTable, Size, True) <> NO_ERROR then
    begin
       Memo1.Lines.Add('');
      Memo1.Lines.Add('Extended TCP Stats');
      Memo1.Lines.Add(Format('%15s: | %5s | %-12s | %20s | (%s)', ['Host', 'Port', 'State']));
      Memo1.Lines.Add('==========================================================================');
      for I := 0 to TCPExTable^.dwNumEntries - 1 do
        Memo1.Lines.Add(Format('%15s: | %5d | %-12s | %20s | (%d)',
          [inet_ntoa(in_addr(TCPExTable^.Table[I].dwLocalAddr)),
          htons(TCPExTable^.Table[I].dwLocalPort),
          PortStateToStr(TCPExTable^.Table[I].dwState)
          ]));

          end;
  finally
    FreeMem(TCPExTable);
  end;
Использовал код из примера tcpstat на форуме _http://programmersforum.ru/showthread.php?t=861&highlight=tcps tat
Horus92 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
iphlpapi Zigmuntfreyd Win Api 4 18.08.2016 14:03
bass.dll в windows 7 Virus191288 Мультимедиа в Delphi 7 27.11.2009 07:48
Фильтрация трафика [IpHlpApi] Denager Работа с сетью в Delphi 1 21.06.2009 01:01
D:\WINDOWS\system32\amvo0.dll>>> 13th Безопасность, Шифрование 8 15.01.2009 12:43