Ver Mensaje Individual
  #2  
Antiguo 16-11-2005
Avatar de OSKR
OSKR OSKR is offline
Miembro
 
Registrado: nov 2004
Ubicación: San Cristóbal/Táchira/Venezuela
Posts: 389
Reputación: 20
OSKR Va por buen camino
ahi estan los nombres de las maquinas....en un edit metes el nombre DNS o NeTBIOS del controlador de dominio y en el otro edit metes el nombre del dominio, esta en builder como puedes ver pero no sera gran problema q lo pases a Delphi
Código:
void __fastcall TForm1::Button3Click(TObject *Sender)
{ NET_API_STATUS nStatus;
  wchar_t *Servername;
  DWORD level;
  void *bufptr;
  DWORD prefmaxlen;
  DWORD entriesread;
  DWORD totalentries;
  DWORD servertype;
  LPWSTR domain;
  DWORD resume_handle;
  //--------------------
  Servername = new wchar_t[Edit1->Text.Trim().Length()+1];
  Edit1->Text.Trim().WideChar(Servername,Edit1->Text.Trim().WideCharBufSize());
  level=101L;
  prefmaxlen=32*1024;
  servertype=SV_TYPE_WORKSTATION;
  domain = new wchar_t[Edit2->Text.Trim().Length()+1];
  Edit2->Text.Trim().WideChar(domain,Edit2->Text.Trim().WideCharBufSize());
  resume_handle=0;
  do
  { nStatus = NetServerEnum(Servername,level,(LPBYTE *)&bufptr,prefmaxlen,&entriesread,&totalentries,servertype,domain,&resume_handle);
	if((nStatus == NERR_Success) || (nStatus == ERROR_MORE_DATA))
	  { SERVER_INFO_101 *SI101=(SERVER_INFO_101 *)bufptr;
		for(int i = 0; (i < entriesread); i++)
		  { Memo1->Lines->Add("//--------------------------------------");
			Memo1->Lines->Add("Nombre: "+AnsiString(SI101[i].sv101_name));
			Memo1->Lines->Add("Id: "+AnsiString(SI101[i].sv101_platform_id));
			Memo1->Lines->Add("Comment: "+AnsiString(SI101[i].sv101_comment));
		  }
	  }
	else
	  { LPVOID lpMsgBuf;
		FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM,NULL,GetLastError(),MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),(LPTSTR) &lpMsgBuf,0,NULL);
		MessageBox( NULL,(char *)lpMsgBuf, "GetLastError", MB_OK|MB_ICONINFORMATION);
		LocalFree( lpMsgBuf );
	  }
	if(nStatus == ERROR_ACCESS_DENIED)
	  { ShowMessage("Sin permisos...");
		break;
	  }
	if(nStatus == NERR_InvalidComputer)
	  { ShowMessage("Pote inválido");
		break;
	  }
	if(nStatus == ERROR_NO_BROWSER_SERVERS_FOUND)
	  { ShowMessage("ERROR_NO_BROWSER_SERVERS_FOUND");
		break;
	  }
  }while(nStatus == ERROR_MORE_DATA);
  if(bufptr)
	NetApiBufferFree(bufptr);
  delete [] Servername;
  delete [] domain;
}
__________________
Los Estados Unidos parecen destinados por la Providencia para plagar la América de miserias a nombre de la libertad."
Simón Bolívar
(Carta al Coronel Inglés Patricio Cambell 05/08/1829).
Responder Con Cita