{=========================================================================
功 能: 网络函数库 【程序编程相关:在DB2 UDB V8 中设置用户出口来】 【推荐阅读:DB2 日志传送基础知识】 时 间: 2002/10/02 【扩展信息:对 DB2 监控数据的 SQL 访问: 】 版 本: 1.0 =========================================================================} unit net;interface
uses sysutils ,windows ,dialogs ,winsock ,classes ,comobj ,wininet;//得到本机的局域网ip地址
function getlocalip(var localip:string): boolean; //通过ip返回机器名 function getnamebyipaddr(ipaddr: string; var macname: string): boolean ; //获取网络中sqlserver列表 function getsqlserverlist(var list: tstringlist): boolean; //获取网络中的所有网络类型 function getnetlist(var list: tstringlist): boolean; //获取网络中的工作组 function getgrouplist(var list: tstringlist): boolean; //获取工作组中所有计算机 function getusers(groupname: string; var list: tstringlist): boolean; //获取网络中的资源 function getuserresource(ipaddr: string; var list: tstringlist): boolean; //映射网络驱动器 function netaddconnection(netpath: pchar; password: pchar;localpath: pchar): boolean; //检测网络状态 function checknet(ipaddr:string): boolean; //检测机器是否登入网络 function checkmacattachnet: boolean;//判断ip协议有没有安装 这个函数有问题
function isipinstalled : boolean; //检测机器是否上网 function internetconnected: boolean; implementation{=================================================================
功 能: 检测机器是否登入网络 参 数: 无 返回值: 成功: true 失败: false 备 注: 版 本: 1.0 2002/10/03 09:55:00 =================================================================} function checkmacattachnet: boolean; begin result := false; if getsystemmetrics(sm_network) <> 0 then result := true; end;{=================================================================
功 能: 返回本机的局域网ip地址 参 数: 无 返回值: 成功: true, 并填充localip 失败: false 备 注: 版 本: 1.0 2002/10/02 21:05:00 =================================================================} function getlocalip(var localip: string): boolean; var hostent: phostent; ip: string; addr: pchar; buffer: array [0..63] of char; ginitdata: twsadata; begin result := false; try wsastartup(2, ginitdata); gethostname(buffer, sizeof(buffer)); hostent := gethostbyname(buffer); if hostent = nil then exit; addr := hostent^.h_addr_list^; ip := format(%d.%d.%d.%d, [byte(addr [0]), byte (addr [1]), byte (addr [2]), byte (addr [3])]); localip := ip; result := true; finally wsacleanup; end; end;... 下一页