某本地设备通过某种方式与网络连接。通过FoxPro程序获取本地用户登陆网络时使用的用户名。这时候本地设备与网络之间的连接必须是存在的。
方案1:利用WNetGetUser函数 DECLARE INTEGER WNetGetUser IN Win32API STRING lpName, STRING @lpUserName,INTEGER @lpnLength szUserName = SPACE(80) dwResult = 0 cchBuff = 80 dwResult = WNetGetUser("", @szUserName, @cchBuff) ?substr(szUsername,1,atc(chr(0),szUsername)-1) ?cchBuff
方案2:利用SYS(0)函数 IF allt(substr(sys(0),rat("#",sys(0))+2)) > "1" and !empty(allt(substr(sys(0),rat("#",sys(0))+2))) gcUserName = allt(substr(sys(0),rat("#",sys(0))+2)) ELSE gcUserName = "NotConnected" ENDIF
----事实上,在某些内置了网络功能的PC机(如运行Windows 98的PC机)上,运行以上两个方案都将返回正在使用本机的用户名。
|