Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Frage Entwicklung Datenbanken

GELÖST

Usernamen mit dem man in Windows angemeldet ist in Access übernehmen

Mitglied: msteib

msteib (Level 1) - Jetzt verbinden

09.06.2006, aktualisiert 16:29 Uhr, 15510 Aufrufe, 4 Kommentare

Hallo,

wir sind hier dabei eine Access Datenbank zu bauen in der Serverausfälle gelistet werden sollen. Nun sollte in einem Feld in einer Tabelle automatisch die UserID eintragetragen werden, mit der man in Windows angemeldet ist (also der Username von Windows).

Am besten sollte er in ein Textfeld in einem Formular übernommen werden.

Habt ihr ne Ahnung wie man das macht?

Danke und viele Grüße,

Michael Steib
Mitglied: 25110
09.06.2006 um 13:26 Uhr
Folgende Funktion liefert den Windows-Benutzernamen:

Function fOSUserName() As String
Dim lngLen As Long, lngX As Long
Dim strUserName As String
strUserName = String$(254, 0)
lngLen = 255
lngX = apiGetUserName(strUserName, lngLen)
If lngX <> 0 Then
fOSUserName = Left$(strUserName, lngLen - 1)
Else
fOSUserName = ""
End If
End Function

Wenn z.B. der Benutzername bei jeder Datensatzänderung in der Tabelle eingetragen werden soll, geht das so:

1) Ein Modul mit der obigen Funktion erstelle.

2) In der Tabelle ein Textfeld einfügen, z.B. BenutzerAenderung

3) Im Formular ein Textfeld erstellen, z.B. BenutzerAenderung

4) Im Formular beim Ereignis ?Nach Aktualisierung:

Private Sub Form_AfterUpdate()
With Me.RecordsetClone
.Bookmark = Me.Bookmark
.Edit
!BenutzerAenderung = fOSUserName
.Update
End With
End Sub

mfg
Bitte warten ..
Mitglied: msteib
09.06.2006 um 14:19 Uhr
Hallo,

ich habe das jezt folgendermaßen eingebaut:

wenn jemand auf den Button "datensatz speichern klickt" soll folgendes ausgeführt werden:

Private Sub Befehl15_Click()
With Me.RecordsetClone
.Bookmark = Me.Bookmark
.Edit
!Benutzername = fOSUserName
.Update
End With

On Error GoTo Err_Befehl15_Click


DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70

Exit_Befehl15_Click:
Exit Sub

Err_Befehl15_Click:
MsgBox Err.Description
Resume Exit_Befehl15_Click

End Sub

Mein Modul habe ich "Windows Benutzername" genannt.

Nun kommt, wenn ich auf Datensatz speichern klicke folgende Meldung:

Titel: Microsoft Visual Basic
Fehler: "Fehler beim Kompilieren: Sub oder Function nicht definiert"

Es wird der Quelltext der Funktion angezeigt und "Function fOSUserName() As String" gelb markiert und "apiGetUserName" grau markiert.

Hier nochmal der komplette Quelltext:

Function fOSUserName() As String
Dim lngLen As Long, lngX As Long
Dim strUserName As String
strUserName = String$(254, 0)
lngLen = 255
lngX = apiGetUserName(strUserName, lngLen)
If lngX <> 0 Then
fOSUserName = Left$(strUserName, lngLen - 1)
Else
fOSUserName = ""
End If
End Function


Vielleicht hast du ja ne Lösung dafür.

danke und viele Grüße,

Michael Steib
Bitte warten ..
Mitglied: 25110
09.06.2006 um 16:21 Uhr
Sorry, im Modul vor der Funktion noch folgenden Code einfügen:

Private Declare Function apiGetUserName Lib "advapi32.dll" Alias _
"GetUserNameA" (ByVal lpBuffer As String, nSize As Long) As Long


Und vorsichtshalber noch die Verweise prüfen:

Modul im Entwurf öffnen, Extras > Verweise
Da sollten 4 Einträge sein:
Visual Basic for Applications
Microsoft Access x.0 Object Library
Microsoft DAO 3.6 Object Library
Microsoft ActiveX Data Objects 2.x Library

mfg
Bitte warten ..
Mitglied: Biber
09.06.2006 um 16:29 Uhr
...ist kaum nötig, mit solchen Kanonen auf den kleinen Spatz zu schießen..

Ermittelt einfach den Usernamen aus dem Environment.

strUsername = Environ("USERNAME")

Die Funktion Environ()/Environ$() ist in der "normalen" VBA-Bibliothek, die ohnehin mit eingebunden (bzw. auf jeden Fall vorhanden) ist.

Gruß
Biber
Bitte warten ..
Ähnliche Inhalte
Microsoft Office
Access 2013 - Übernehmen von Access Formular aus Backupdatei
gelöst Frage von MuseumMLMicrosoft Office8 Kommentare

Ein Formulara ist aus einer aktuellen Datenbank verschwunden. Der Benutzer hat diese wohl aus Versehen gelöscht. Wie kann ich ...

LAN, WAN, Wireless
Software die mir unter Windows den Namen, oder die MAC, des Access Points anzeigt an dem ich angemeldet bin
Frage von rana-mpLAN, WAN, Wireless3 Kommentare

Hallo zusammen, fuer Diagnosezwecke ist es abundan nuetzlich, genau zu wissen an welchem Access Point ich grade angemeldet bin. ...

C und C++
Spoof Username
gelöst Frage von CloudyC und C++9 Kommentare

Hallo, ich habe hier eine Blöde Software, die rum zickt, falls sie ein anderer Benutzer aufmacht (Sich der Username ...

Batch & Shell
Username Kontrolle
gelöst Frage von MaxophoniBatch & Shell3 Kommentare

Hallo, ich bin gerade dabei ein Batch Programm zu schreiben. Ich möchte das gleich am Anfang der Benutzername abgefragt ...

Neue Wissensbeiträge
Linux

Meltdown und Spectre: Linux Update

Information von Frank vor 2 TagenLinux

Meltdown (Variante 3 des Prozessorfehlers) Der Kernel 4.14.13 mit den Page-Table-Isolation-Code (PTI) ist nun für Fedora freigegeben worden. Er ...

Tipps & Tricks

Solutio Charly Updater Fehlermeldung: Das Abgleichen der Dateien in -Pfad- mit dem Datenobject ist fehlgeschlagen

Tipp von StefanKittel vor 3 TagenTipps & Tricks

Hallo, hier einmal als Tipp für alle unter Euch die mit der Zahnarztabrechnungssoftware Charly von Solutio zu tun haben. ...

Sicherheit

Meltdown und Spectre: Wir brauchen eine "Abwrackprämie", die die CPU-Hersteller bezahlen

Information von Frank vor 3 TagenSicherheit12 Kommentare

Zum aktuellen Thema Meltdown und Spectre: Ich wünsche mir von den CPU-Herstellern wie Intel, AMD oder ARM eine Art ...

Sicherheit

Meltdown und Spectre: Realitätscheck

Information von Frank vor 3 TagenSicherheit12 Kommentare

Die unangenehme Realität Der Prozessorfehler mit seinen Varianten Meltdown und Spectre ist seit Juni 2017 bekannt. Trotzdem sind immer ...

Heiß diskutierte Inhalte
E-Mail
Erfahrungen mit hMailServer gesucht
Frage von it-fraggleE-Mail10 Kommentare

Hallo, meine neue Stelle möchte einen eigenen Mailserver. Ich als Linuxkind war direkt geistig mit Postfix dabei. Leider wollen ...

Firewall
Penetrationstester-Labor - Firewalls
Frage von Oli-nuxFirewall10 Kommentare

Mich würde interessieren warum man beim Einrichten eines Penetrationstester-Labor (VMs) die Firewall der Systeme deaktivieren soll? Hat das nur ...

SAN, NAS, DAS
Wer kennt sich mit QNAP und CISCO aus ?
gelöst Frage von MachelloSAN, NAS, DAS9 Kommentare

Hallo Zusammen hier im Forum, Ich habe ein QNas 451+ und dieses NAS hat zwei GBit Lan Adapter die ...

Netzwerkgrundlagen
IPv6 Inter-VLAN Routing
gelöst Frage von clSchakNetzwerkgrundlagen9 Kommentare

Hi ich befasse mich gerade mit der Implementierung von IPv6 was bisher (in einem VLAN) korrekt funktioniert inkl. DNS ...