📄 unit2.pas
字号:
unit Unit2;
interface
uses
Classes,Windows,Messages,SysUtils, Graphics, Controls,unit1;
type
TSearchFileThread = class(TThread)
private
{ Private declarations }
s:string;
procedure AddFile;
protected
procedure Execute; override;
end;
implementation
procedure TSearchFileThread.AddFile;
begin
Form1.ListBox1.Items.Add(s);
end;
procedure TSearchFileThread.Execute;
Var
EnumHandle : THandle;
FileRS : TNetResource;
Buf : Array[1..500] of TNetResource;
BufSize : DWord;
Entries : DWord;
Result : Integer;
begin
mydir := mydir + #0;//mydir为工作组名时可以得到组内所有主机名
//mydir为主机名时可以得到机内所有共享文件夹名
FillChar(FileRS, SizeOf(FileRS) , 0);
With FileRS do begin
dwScope := 2;
dwType := 3;
dwDisplayType := 1;
dwUsage := 2;
lpRemoteName := @mydir[1];
end;
WNetOpenEnum( RESOURCE_GLOBALNET,
RESOURCETYPE_ANY,
0,
@FileRS,
EnumHandle );
Repeat
Entries := 1;
BufSize := SizeOf(Buf);
Result := WNetEnumResource( EnumHandle,Entries,@Buf,BufSize );
If (Result = NO_ERROR) and (Entries = 1) then
begin
s:= StrPas(Buf[1].lpRemoteName); //得到网上资源名,主机或文件夹
Synchronize(AddFile); //Form1.ListBox1.Items.Add(s);
end ;
Until (Entries <> 1) or (Result <> NO_ERROR);
WNetCloseEnum( EnumHandle );
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -