如何在Delphi程序中获取局域网中相关指定IP地址的计算机的硬盘,CPU,内存的使用情况?

解决方案 »

  1.   

    (1)在其他机器上,各配置一个server端; 
         (2)在本地机器上配置一个client端; 
         (3)通过client端输入指定机器的Ip地址和端口,与server端建立连接, 
         程序的实现,可以自己做!运用Delphi的clientsocket和serversocket控件,发送一个命令,返回你要的结果。
      

  2.   

    思路就是 My_first那样的,也可以用UDP,连接上后,通过读注册表和使用函数,反馈回收到的信息,能达到 你的要求
      

  3.   

    硬盘的使用情况可以得到
    别的我不清楚
    对于硬盘,有两种实现途径
    一种是利用delphi自带的函数,DiskFree,DiskSize
    不过这需要将远程机的硬盘映射到本地机上
    这个可以通过dos下的net use来完成
    你也可以通过winexec来调用net use第二种方法是利用Api函数来实现
      Bool GetDiskFreeSpaceEx(
                   LPCTSTR lpDirectory,//指向目标磁盘或目录
                   PULARGE_INTEGER lpFreeBytesAvailableToCaller,//用户可利用空间
                   PULARGE_INTEGER lpTotalNumberOfBytes,//总磁盘空间
                   PULARGE_INTEGER lpTotalNumberOfFreeBytes//剩余磁盘空间
    );var
       dirname:pchar;
       freeavailable,totalspace:TLargeInteger;
       totalfree:PLargeInteger;
    begin
       dirname:=pchar(edit1.text);
       getmem(totalfree,100);
       try
         if GetDiskFreeSpaceEx(dirname,freeavailabe,totalspace,totalfree)<>null then
       edit2.text:=inttostr(freeavailable);
     finally
       freemem(totalfree);
    end;
    end;
    end;