bakuri Используй NetShareEnum. Исходников в сети полно. Включая пример в описании данной функции на msdn.
bakuri Не понял. Функция, будучи запущена из под w2k, не возвращает в списке ресурсов - скрытых, или не возвращает скрытых ресурсов с w2k сервера, или ты не нашел готового решения?
Ребята я был на MSDN.COM взял вот этот исходник (делаю под Builder для определения скрытых и не скрытых ресурсов локальных компьютеров под XP и 2000 на которых не установленны фаерволы и никакой защиты), но он вообще не работает.. Прошу вас помогите PSHARE_INFO_502 BufPtr,p; NET_API_STATUS res; LPTSTR lpszServer = NULL; DWORD er=0,tr=0,resume=0, i; lpszServer = "\\\\ind01"; do // begin do { res = NetShareEnum (WideString(lpszServer), 502, (LPBYTE *) &BufPtr, -1, &er, &tr, &resume); // // If the call succeeds, // if(res == ERROR_SUCCESS || res == ERROR_MORE_DATA) { p=BufPtr; // // Loop through the entries; // print retrieved data. // for(i=1;i<=er;i++) { Memo1->Lines->Add(p->shi502_netname); Memo1->Lines->Add(p->shi502_path); Memo1->Lines->Add( p->shi502_current_uses); // , p->shi502_path, p->shi502_current_uses); // // Validate the value of the // shi502_security_descriptor member. // if (IsValidSecurityDescriptor(p->shi502_security_descriptor)) printf("Yes\n"); else printf("No\n"); p++; } // // Free the allocated buffer. // NetApiBufferFree(BufPtr); } else printf("Error: %ld\n",res); } // Continue to call NetShareEnum while // there are more entries. // while (res==ERROR_MORE_DATA); // end do return;
bakuri он вообще не работает В чем это выражается? Кто научил тебя так описывать проблему? Тебе понравится ответ "А у меня работает"? Ты хочешь, чтобы кто-нибудь запостил нечто подобное Код (Text): ... void __fastcall TForm1::Button1Click(TObject *Sender) { // здесь готовый код ... } ... был на MSDN.COM взял вот этот исходник ... Зачем копировать его сюда? Afaik достаточно ссылки.