![]() |
User Name via 1. API, 2. Enviornment, 3. WScript.Network
All,
I have reviewed the several ways of retrieving a User Name from various postings here. I have listed 3 below. Are the results of each is coming from different places? Can someone tell me from where each is pulling the UserName info? I am currently assuming that the API & WScript are coming from the same place since I rec'd the same answer (until someone tells me otherwise). Are there pros/cons of using the WScript vs. API function? Thank your for any assistance. MSweetG222 Option Explicit '================================================= == Private Declare Function GetUserName Lib "advapi32.dll" Alias "GetUserNameA" (ByVal lpBuffer As String, nSize As Long) As Long Function UserNameWindows() Dim lngLen As Long Dim strBuffer As String Const dhcMaxUserName = 255 strBuffer = Space(dhcMaxUserName) lngLen = dhcMaxUserName If CBool(GetUserName(strBuffer, lngLen)) Then UserNameWindows = Left$(strBuffer, lngLen - 1) Else UserNameWindows = "" End If End Function '================================================= == Function UserName() Dim wsnet Set wsnet = CreateObject("wscript.network") UserName = wsnet.UserName End Function '================================================= == Function EnvironUserName() EnvironUserName = Environ("USERNAME") End Function '================================================= == |
User Name via 1. API, 2. Enviornment, 3. WScript.Network
I would assume that they all get the answer from the same place, just use
different (more accessible) methods of extracting it. They should all return the same value, they do on my box(es). -- HTH Bob Phillips (remove nothere from email address if mailing direct) "MSweetG222" wrote in message ... All, I have reviewed the several ways of retrieving a User Name from various postings here. I have listed 3 below. Are the results of each is coming from different places? Can someone tell me from where each is pulling the UserName info? I am currently assuming that the API & WScript are coming from the same place since I rec'd the same answer (until someone tells me otherwise). Are there pros/cons of using the WScript vs. API function? Thank your for any assistance. MSweetG222 Option Explicit '================================================= == Private Declare Function GetUserName Lib "advapi32.dll" Alias "GetUserNameA" (ByVal lpBuffer As String, nSize As Long) As Long Function UserNameWindows() Dim lngLen As Long Dim strBuffer As String Const dhcMaxUserName = 255 strBuffer = Space(dhcMaxUserName) lngLen = dhcMaxUserName If CBool(GetUserName(strBuffer, lngLen)) Then UserNameWindows = Left$(strBuffer, lngLen - 1) Else UserNameWindows = "" End If End Function '================================================= == Function UserName() Dim wsnet Set wsnet = CreateObject("wscript.network") UserName = wsnet.UserName End Function '================================================= == Function EnvironUserName() EnvironUserName = Environ("USERNAME") End Function '================================================= == |
User Name via 1. API, 2. Enviornment, 3. WScript.Network
Bob - thanks for responding.
On my system, the API & WScript return the same answer. The Environ returns nothing. I checked "Set" in Dos and sure enough, there is not a UserName variable. Thx MSweetG222 |
User Name via 1. API, 2. Enviornment, 3. WScript.Network
I have heard a couple of different ideas on environ vs API. One is that
Environ was not uspported by Windows 98 / ME. The other is that the API returns the network login, while environ returns the windows login (which although not normally differnent can be). I am not too sure if or what is true. I always just use environ. -- HTH... Jim Thomlinson "MSweetG222" wrote: Bob - thanks for responding. On my system, the API & WScript return the same answer. The Environ returns nothing. I checked "Set" in Dos and sure enough, there is not a UserName variable. Thx MSweetG222 |
All times are GMT +1. The time now is 01:17 PM. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com