Ich möchte gerne das Systemdatum und den Benutzernamen (Win NT5.x) per Avenue ermitteln, um es in einem Dialogfenster darzustellen und mit Benutzereingaben in einer Access'97-DB zuspeichern. Leider finde ich aber nirgendwo dazu einen Weg. Geht das nur über DOS-Tricks (Batch-Datei oder ähnliches) und wenn ja wie?
- Anmelden oder Registieren, um Kommentare verfassen zu können
Gespeichert von Andre Steinhäuser am Do., 01.07.2004 - 09:13
Permalinkfolgender Code stammt von den Esri ArcScripts (gefunden durch Suche nach: Username windows)
---------------
'====================================================================
' Name: ORDINA.FINABO.GETUSERNAME
'
' Author: Richard Zijlstra
' Date: Thu Jan 25 12:48:07 2001
' Revised by:
' Revision Date:
' Revisions:
' -------------------------------------------------------------------
' Description: This script will give back the username of the client
' and using this as a filename.
' Requires: advapi32.dll
' Runs:
' Run by:
' Self:
' Returns: str_UserName 'Username String
' ===================================================================
'======================================================
'EXAMPLE 2
'Retrieve the user logged on to the windows 95 system:
'======================================================
theDllFile = "advapi32.dll"
theDll = FileName.FindInSystemSearchPath(theDllFile)
if (theDll = Nil) then
msgbox.error("The File "+theDllFile+" could not be found on the system!"+NL+
"You have to re-install the Windows system!","File not found")
return (nil)
end
'==================
'The DLL procedure
'==================
GetUserNameDLL = DLL.Make(theDll)
_GetUserName = DLLProc.Make(GetUserNameDLL, "GetUserNameA", #DLLPROC_TYPE_INT32, {#DLLPROC_TYPE_STR, #DLLPROC_TYPE_PINT32})
'Makes room for the returned string
str_Name = String.MakeBuffer(255)
'Initialise length of string:
num_Length = 255
num_Return = _GetUserName.Call({str_Name,num_Length})
'===================================================================== =========
'str_Name now contains the username, num_Length contains the length of the
'name including the last null-character
'===================================================================== =========
str_UserName = str_Name.Left(num_Length - 1)
msgbox.info(str_UserName,"")
------------------------------------
haut bei mir auch hin (AV3.1).
Die aktuelle Zeit mit Datum bekommst Du mit date.now
Gruß
André
Gespeichert von Edward_III am Do., 01.07.2004 - 10:36
Permalinkgenial - es klappt! :-)
Ich werde das nächste mal besser gleich unter den ArcScripts bei ESRI suchen, statt unter Developer > "Search" und vor allem mehr Suchbegriffe probieren.
Das Date.now hätte ich eigentlich auch selber in der ArcView Hilfe finden müssen... Habe es einfach übersehen.
VIELEN DANK!!!
Gruß
Edward