Delphi - Algo de redes

 
Vista:

Algo de redes

Publicado por Daniel (4 intervenciones) el 01/05/2002 21:11:14
Quisiera saber como obtener la lista de recursos (carpetas) compartidos de una pc de manera remota en Delphi (por supuesto).

Si alguien sabe, por favor haganmelo saber.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Algo de redes

Publicado por Diego Romero (636 intervenciones) el 02/05/2002 01:43:26
Extraido de www.q3.com
necesitas un TListView y un TButton, en el evento on click del TButton...

procedure TForm1.Button1Click(Sender: TObject);

procedure Enumera(Cual:PnetResource);
var
Mango :THandle;
NumeroEntradas :DWord;
Buffer :Array [1..100] of TNetResource;
LongBuffer :DWord;
n :Integer;
ListItem :TListItem;
begin
LongBuffer:=SizeOf(Buffer);

if WNetOpenEnum( RESOURCE_GLOBALNET,
RESOURCETYPE_ANY,
0,
Cual,
Mango
)<> No_ERROR then ShowMessage('Error');

{100 entradas (máximo) por cada servidor}
{100 enties (max) per server}
NumeroEntradas:=100;
WNetEnumResource( Mango,
NumeroEntradas,
@Buffer[1],
LongBuffer
);

for n:=1 to NumeroEntradas do
begin
ListItem:=ListView1.Items.Add;
with ListItem do
begin
Caption:=String(Buffer[n].lpRemoteName);
if Caption='' then Caption:='Inicio de red';
SubItems.Add(String(Buffer[n].lpComment));
end;

if (Buffer[n].dwUsage and RESOURCEUSAGE_CONTAINER)=
RESOURCEUSAGE_CONTAINER then
begin
ListItem.SubItems.Add('Servidor');
Enumera(@Buffer[n]);
end
else
begin
if (Buffer[n].dwType and RESOURCETYPE_DISK)=
RESOURCETYPE_DISK
then ListItem.SubItems.Add('Disco') else
if (Buffer[n].dwType and RESOURCETYPE_PRINT)=
RESOURCETYPE_PRINT
then ListItem.SubItems.Add('Impresora');
end;
end;
end;


begin
{Inicializamos nuestro ListView}
{Initialice our ListView}
with ListView1 do
begin
ViewStyle:=vsReport;
with Columns.Add do
begin
{Remote Name}
Caption:='Nombre Remoto';
Width:=150;
end;
with Columns.Add do
begin
{Comment}
Caption:='Comentario';
Width:=150;
end;
with Columns.Add do
begin
{Type}
Caption:='Tipo';
Width:=100;
end;
end;
{Rellenamos el ListView}
{Fill the ListView}
Enumera(nil);
end;
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Algo de redes

Publicado por Daniel (4 intervenciones) el 05/05/2002 17:22:15
Muchas gracias Diego, pero me haria falta que me dijeras como le especifico el servidor o direccion remota de la maquina que yo quiera obtener dicha lista.

Gracias de nuevo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar