//***************************************************************************************** // Copyright (c) 2000 Michael Kurz // All rights reserved. // If you want to use this source in your applications conatct: // // $FileName : mUserAndComputerName.pkg // $ProjectName : General shared classes // $Author : Michael Kurz // $Created : 12-31-2000 @ 09:00 // // Contents: // // $Rev History // //***************************************************************************************** Use mPointer.pkg #IFDEF Get_ComputerName #ELSE #IFNDEF gsComputerName Global_Variable String gsComputerName #ENDIF #IFNDEF gsUserName Global_Variable String gsUserName #ENDIF external_function GetComputerName "GetComputerNameA" kernel32.dll Pointer lpszName Pointer lpdwcBuffer Returns Integer external_function WNetGetUser1 "WNetGetUserA" MPR.DLL Pointer lpName Pointer lpUserName Pointer lpLength Returns Dword Function ComputerName For desktop Returns String String sName sLength sEnv Integer iRetval Move (Repeat (Character (0), 25)) To sName Move (DwordToBytes (25)) To sLength Move (GetComputerName(AddressOf(sName), AddressOf(sLength))) To iRetval Move (cstring(sName)) To sName If sName Eq "" Move "DEFAULT" To sName Move (cstring(sname)) To gsComputerName Function_Return gsComputerName End_Function Function NetzwerkBenutzer For desktop Returns String String sName sLength Integer iRetval Move (Repeat (Character (0), 255)) To sName Move (DwordToBytes (255)) To sLength Move (WNetGetUser1 (0, AddressOf(sName), AddressOf(sLength))) To iRetval If iRetval Eq 0 Move (cstring(sName)) To sName Else Move "DEFAULT" To sName If sName Eq "" Move "DEFAULT" To sName Move sName To gsUserName Function_Return sName End_Function #ENDIF Move (NetzwerkBenutzer(Desktop)) To gsUserName Move (ComputerName(Desktop)) To gsComputerName // Only for testing purposes... external_function GetUserNameEx "GetUserNameExA" Secur32.DLL dword iFormat Pointer pName Integer iSize Returns Integer Function DFGetUserNameEx Global Integer iFormat Returns String String sName String sDW Integer iRet Move (Repeat(Character(0),1024)) To sName Move (DWordToBytes(1024)) To sDW Move (GetUserNameEx(iFormat,AddressOf(sName),AddressOf(sDW))) To iRet Function_Return (CString(sName)) End_Function external_function GetUserName "GetUserNameA" AdvApi32.DLL Pointer pName Integer iSize Returns Integer Function DFGetUserName Global Returns String String sName String sDW Integer iRet Move (Repeat(Character(0),1024)) To sName Move (DWordToBytes(1024)) To sDW Move (GetUserName(AddressOf(sName),AddressOf(sDW))) To iRet Function_Return (CString(sName)) End_Function