C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
WNetGetResourceInformation
Fable
Отправлено: 04.03.2006, 05:32


Не зарегистрирован







Народ, напишите кто-нибудь примерчик использования данной функции.
Fable
Отправлено: 04.03.2006, 15:01


Не зарегистрирован







Пример из MSDN. Для меня загадка, что содержит dwValue. Как можно получить, например, комментарий о компе?
CODE

//
// Verify a server on the network.
//
DWORD
CheckServer(
   LPTSTR pszServer
   )
{  
   DWORD dwBufferSize = sizeof(NETRESOURCE);
   LPBYTE lpBuffer;                  // buffer
   NETRESOURCE nr;
   LPTSTR pszSystem = NULL;          // variable-length strings
   DWORD dwValue;

   //
   // Fill a block of memory with zeroes; then initialize
   // the NETRESOURCE structure.
   //
   ZeroMemory(nr, sizeof(nr));

   nr.dwScope       = RESOURCE_GLOBALNET;
   nr.dwType        = RESOURCETYPE_ANY;
   nr.lpRemoteName  = pszServer;

   //
   // First call the WNetGetResourceInformation function with
   // memory allocated to hold only a NETRESOURCE structure. This
   // method can succeed if all the NETRESOURCE pointers are NULL.
   // If the call fails because the buffer is too small, allocate
   // a larger buffer.
   //
   lpBuffer = (LPBYTE) malloc( dwBufferSize );
   if (lpBuffer == NULL)
       return FALSE;

   while ( WNetGetResourceInformation(&nr, lpBuffer, &dwBufferSize,
               &pszSystem) == ERROR_MORE_DATA)
   {
       lpBuffer = (LPBYTE) realloc(lpBuffer, dwBufferSize);
   }

   // Process the contents of the NETRESOURCE structure and the
   // variable-length strings in lpBuffer and set dwValue. When
   // finished, free the memory.

   free(lpBuffer);

   return dwValue;
}

Вернуться в Вопросы программирования в C++Builder