C++ C++ C# C# ASP.NET Security ASP.NET Security ASM ASM Скачать Скачать Поиск Поиск Хостинг Хостинг  
  Программа для работы с LPT портом...
Язык: .NET — ©Alexey...
  "ASP.NET Atlas" – AJAX в исполнении Micro...
Язык: .NET — ©legigor@mail.ru...
  "Невытесняющая" Многопоточность...
Язык: C/C++ — ©...
  01.05.2010 — Update World C++: Сборник GPL QT исходников
  15.12.2007 — Весь сайт целиком можно загрузить по ссылкам из раздела Скачать
Хостинг:
Windows 2003, ASP.NET 2.0
бесплатный и от 80 руб./мес


   Отправить письмо
Кулабухов Артем, Беларусь




 Функция GetNetworkParams / Локальная сеть / Сеть

Функция GetNetworkParams.

Функция GetNetworkParams позволяет узнать сетевые настройки локального компьютера.

Внимание: Для использования этой функции необходимо, чтобы был установлен Platform SDK!

DWORD GetNetworkParams(
  PFIXED_INFO pFixedInfo,
  PULONG pOutBufLen
);

Параметры

pFixedInfo
Указатель на структуру FIXED_INFO в которой после вызова функции будут находиться сетевые настройки локального компьютера.
pOutBufLen
Указатель на переменную ULONG которая содержит размер структуры FIXED_INFO. Если размер недостаточен для хранения информации, то GetNetworkParams возвращает в этой переменной требуемый размер, а так же возвращает код ошибки ERROR_BUFFER_OVERFLOW.

Возвращаемое значение

В случае успеха, функция должна вернуть ERROR_SUCCESS.

В случае ошибки, функция вернёт одно из следующих значений.

 

Значение Описание
ERROR_BUFFER_OVERFLOW Размер буфера, указанный в переменной pOutBufLen недостаточен для хранения информации. Параметр pOutBufLen указывает на требуемый размер.
ERROR_INVALID_PARAMETER Параметр pOutBufLen равен NULL, либо вызывающий процесс не имеет прав на запись/чтение в памяти по адресу pOutBufLen, либо вызывающий процесс не имеет прав на запись в памяти по адресу pAdapterInfo.
ERROR_NO_DATA Функции не удалось получить информацию.
ERROR_NOT_SUPPORTED GetNetworkParams не поддерживается данной операционной системой.
другое В случае ошибки, воспользуйтесь функцией FormatMessage для получения подробной строки об ошибке.


Пример использования функции

//
// Не забудьте подключить к проекту IPHlpAPI.lib
//
#include <stdio.h>
#include <windows.h>
#include <iphlpapi.h>

main() {
   
   FIXED_INFO * FixedInfo;
   ULONG    ulOutBufLen;
   DWORD    dwRetVal;
   IP_ADDR_STRING * pIPAddr;

   FixedInfo = (FIXED_INFO *) GlobalAlloc( GPTR, sizeof( FIXED_INFO ) );
   ulOutBufLen = sizeof( FIXED_INFO );
   
   if(ERROR_BUFFER_OVERFLOW == GetNetworkParams(FixedInfo, &ulOutBufLen)) {
      GlobalFree( FixedInfo );
      FixedInfo = (FIXED_INFO *) GlobalAlloc( GPTR, ulOutBufLen );
   }

   if ( dwRetVal = GetNetworkParams( FixedInfo, &ulOutBufLen ) ) {
     printf( "GetNetworkParams failed. Return Value: %08x\n", dwRetVal);
   }
   else {
      printf( "Host Name: %s\n", FixedInfo -> HostName );
      printf( "Domain Name: %s\n", FixedInfo -> DomainName );
      
      printf( "DNS Servers:\n" );
      printf( "\t%s\n", FixedInfo -> DnsServerList.IpAddress.String );
      
      pIPAddr = FixedInfo -> DnsServerList.Next;
      while ( pIPAddr ) {
         printf( "\t%s\n", pIPAddr ->IpAddress.String );
         pIPAddr = pIPAddr ->Next;
      }
   }
   exit( 0 );
}

Дополнительная информация

Windows NT/2000/XP: Включена в Windows 2000 и выше.
Windows 95/98/Me: Включена в Windows 98 и выше.
Заголовок: Объявлена в Iphlpapi.h.
Библиотека: Iphlpapi.lib.