Environment
Situation
Resolution
HKEY_LOCAL_MACHINE\Enum\Network\NETWARE3 => NetWare (16-bit HKEY_LOCAL_MACHINE\Enum\Network\NETWARE4 => NetWare (16-bit)
if Win9x look at:
HKEY_LOCAL_MACHINE\Network\Logon\PrimaryProvider
else look at:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\NetworkProvider\Order\ProviderOrder
If we find one of these values, then we determine it's the corresponding network:
"NETWAREWORKSTATION" NT Novell 32bit Netware
"NOVELL_NETWARE" 95 Novell 32bit Netware
"NETWARE" 95 Microsoft 32bit Netware
"VINESWORKSTATION" NT Banyan 32bit Vines
"BANYAN VINES NETWORK" 95 Banyan 32bit Vines
"VINES" 95 Banyan 16bit Vines
"VOID" 95 Novell 16bit Netware 3.x
"VOID" 95 Novell 16bit Netware 4.x
"LANMANWORKSTATION" NT Microsoft 32bit NT-LanMan
"MICROSOFT NETWORK" 95 Microsoft 32bit NT-LanMan
"NWCWORKSTATION" NT Microsoft 32bit Netware
On Windows 2000 on an NT network we find "LANMANWORKSTATION". Based on this, we call into NETAPI32.DLL. We try to get the name from the"NetUserGetInfo32" function call.
Check HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\NetworkProvider\Order\ProviderOrder key and see if it has a value that is not listed above if you are not getting the correct Primary User Name.