Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Visual Basic 6 - account utente di windows
Forum - Visual Basic 6 - account utente di windows

Avatar
Pierfrancis (Normal User)
Newbie


Messaggi: 11
Iscritto: 10/04/2007

Segnala al moderatore
Postato alle 22:28
Domenica, 15/04/2007
ciao a tutti
qualcuno sa come si puo ottenere con un progarmma in VB il nome dell' account utente di windows?

PM Quote
Avatar
ciccio75 (Normal User)
Newbie


Messaggi: 1
Iscritto: 24/05/2007

Segnala al moderatore
Postato alle 10:04
Giovedė, 24/05/2007
Ciao, la cosa e' fattibile e relativamente semplice.
Prima di tutto dovrai appoggiarti ad un API di Windows, quindi dovrai inserire nel tuo codice quanto segue:

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

A questo punto bastera' appoggiarsi a tale funzione (io per esempio ho creato una funzione apposta in modo da evitare di riscrivere piu' volte lo stesso codice) per ottenere il nome utente. Di seguito ti metto la funzione da me utilizzata:

Function getNomeUser() As String
    Dim strString As String
    Dim lunghezzaStringa As Long
    lunghezzaStringa = 32
    strString = String(lunghezzaStringa, " ")
    GetUserName strString, lunghezzaStringa
    strString = Left(strString, lunghezzaStringa)
    getNomeUser = strString
End Function

A questo punto bastera' richiamare la funzione appena vista, tenendo conto che la "primitiva" restituisce anche un carattere extra (forse un carrier return, non saprei...) che va tolto, quindi:

Dim nome_utente As String
nome_utente = getNomeUser
nome_utente = Mid(nome_utente, 1, Len(nome_utente) - 1)

Ed ecco che la tua variabile nome_utente conterra' il nome dell'account dell'utente attualmente loggato sulla macchina.

PM Quote