同上
解决方案 »
- 一个2层管理系统,多人操作保存单据经常长生串号,重号情况。
- 求教怎样打开"E话通"这个软件的数据库文件直接看到记录?
- 我是河北沧州的,有河北的程序员吗?
- 急!!!问题!
- 在delphi中如何打印一个图片文件,比如pic.jpg;
- 双击dbgrid时如何得到dbgrid被选中的单元的left?
- 有关报表的简单问题
- 关于actionlist
- 库存盘点是怎样一回事?各位给讲一讲?谢谢!!!!
- 当鼠标指向StringGrid中的某一单元,可否让这个单元变色?
- 小弟初学Delphi,请问有那些好一点的入门书籍?谢谢
- clientdateset控件的applyupdates方法怎麼才會拋出异常,我用居然一個都捕捉不到
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
ComCtrls, StdCtrls ,winsock; type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
function GetIP(Name:String) : string;
procedure GetDomainList();
public
{ Public declarations }
end; var
Form1: TForm1; implementation {$R *.DFM} procedure TForm1.Button1Click(Sender: TObject);
begin
GetDomainList();
end; ////////////////////////////////////////
function TForm1.GetIP(Name:String):String;
var
WSAData: TWSAData;
HostEnt: PHostEnt;
sIP: string;
begin
WSAStartup(2, WSAData);
HostEnt := gethostbyname(PChar(Name));
if HostEnt <> nil then
begin
with HostEnt^ do
sIP := Format('%d.%d.%d.%d', [Byte(h_addr^[0]), Byte(h_addr^[1]), Byte(h_addr^[2]), Byte(h_addr^[3])]); end;
WSACleanup;
result:= sIP;
end;
/////////////////////////////////////// procedure TForm1.GetDomainList();
var
i : Integer;
ErrCode : Integer;
NetRes : Array[0..1023] of TNetResource;
EnumHandle : Thandle;
EnumEntries : Dword;
BufferSize : Dword;
ComputerIP,ComputerName:String;
begin
//try
With NetRes[0] do begin
dwScope :=RESOURCE_GLOBALNET;
dwType :=RESOURCETYPE_ANY;
dwDisplayType :=RESOURCEDISPLAYTYPE_DOMAIN;
dwUsage :=RESOURCEUSAGE_CONNECTABLE;
lpLocalName :=NIL;
lpRemoteName :=NIL;
lpComment :=NIL;
lpProvider :=NIL;
end;
{ get net root }
ErrCode:=WNetOpenEnum(
RESOURCE_GLOBALNET,
RESOURCETYPE_ANY,
RESOURCEUSAGE_CONTAINER,
@NetRes[0],
EnumHandle
); If ErrCode=NO_ERROR then begin
EnumEntries:=1;
BufferSize:=SizeOf(NetRes);
ErrCode:=WNetEnumResource(EnumHandle,EnumEntries,@NetRes[0],BufferSize);
WNetCloseEnum(EnumHandle);
ErrCode:=WNetOpenEnum(
RESOURCE_GLOBALNET,
RESOURCETYPE_ANY,
RESOURCEUSAGE_CONNECTABLE,
@NetRes[0],
EnumHandle
);
EnumEntries:=1024;
BufferSize:=SizeOf(NetRes);
ErrCode:=WNetEnumResource(
EnumHandle,
EnumEntries,
@NetRes[0],
BufferSize
); for i:=0 to 1023 do
if NetRes[i].lpRemoteName='' then Exit
else begin
ComputerName:=Copy(NetRes[i].lpRemoteName,3,Length(NetRes[i].lpRemoteName)-2);
ComputerIP:=GetIP(ComputerName);
ShowMessage('计算机名' + NetRes[i].lpRemoteName + chr(13)
+ '计算机说明:' + NetRes[i].lpComment + chr(13)
+ 'IP地址:' + ComputerIP);
end;
end;
end; end.
begin
winexec('cmd /c net view>c:\ttt.txt',sw_hide);
end;//windows 9x
begin
winexec('command.com /c net view>c:\ttt.txt',sw_hide);
end;然后到c:\ttt.txt看看。剩下的事情就是把c:\ttt.txt中的内容读取到listbox中了