Newsgroup: it.comp.appl.access
Titolo: Come inserire in una tabella la Login di Windows

Buongiorno a tutti,
volevo richiedere come poter far inserire ad Access automaticamente in
una tabella la Login e il Nome Computer di un'inserimento.
Mi servirebbe per un DB da inserire su di un Server e poi condividerlo
con degli utenti.
Grazie e buona giornata.
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 una tabella la Login e il Nome Computer di un'inserimento.
Ciao Ciccio Family,
ti passo il codice di due funzioni che servono allo scopo. Visto che non sei
il primo a fare questa domanda, credo che in futuro realizzerò un breve
tutorial e lo metterò sul mio sitarello.
Ecco il codice.
Buona Lettura
--
Simplex2
www.mdenittis.it
_______________
'< ************ CODICE ***************>
Attribute VB_Name = "System_NomeComputer"
Option Compare Database
Option Explicit
Global Const HKEY_CLASSES_ROOT = &H80000000
Global Const HKEY_CURRENT_USER = &H80000001
Global Const HKEY_LOCAL_MACHINE = &H80000002
Global Const HKEY_USERS = &H80000003
Public Const KEY_QUERY_VALUE = &H1
Public Enum EXTENDED_NAME_FORMAT
  NameUnknownName = 0
  NameFullyQualifiedDN = 1
  NameSamCompatibleName = 2
  NameDisplay = 3
  NameUniqueId = 6
  NameCanonical = 7
  NameUserPrincipal = 8
  NameCanonicalEx = 9
  NameServicePrincipal = 10
  NameDnsDomainName = 12
End Enum
' dichiarazione della funzione delle API Win32
Public Declare Function MyRegQueryValueExA Lib "advapi32.dll" Alias
"RegQueryValueExA" (ByVal hkey As Long, ByVal lpValueName As String, ByVal
lpReserved As Long, ByVal lpType As Long, ByVal lpData As String, lpcbData
As Long) As Long
Public Declare Function MyRegOpenKeyExA Lib "advapi32.dll" Alias
"RegOpenKeyExA" (ByVal hkey As Long, ByVal lpSubkey As String, ByVal
ulOptions As Long, ByVal samDesired As Long, ByRef phkresult As Long) As
Long
Public Declare Function MyGetUserNameExA Lib "secur32.dll" Alias
"GetUserNameExA" (ByVal Format As Long, ByRef lpBuffer As String, ByRef
lpSize As Long) As Boolean
Public Declare Function MyGetUserNameA Lib "advapi32.dll" Alias
"GetUserNameA" (ByVal lpBuffer As String, ByRef lpSize As Long) As Boolean
Public Function ApriChiaveNomeComputer() As Long
Dim MyName As String
Dim RegPath As String
Dim l_MyName As Long
Dim risultato As Long
Dim MyHandle As Long
RegPath = "SYSTEM\CurrentControlSet\Control\ComputerName\ActiveComputerName"
risultato = MyRegOpenKeyExA(HKEY_LOCAL_MACHINE, RegPath, 0, KEY_QUERY_VALUE,
MyHandle)
If risultato = 0 Then
    ApriChiaveNomeComputer = MyHandle
Else
    MsgBox "Errore n°: " & risultato
    ApriChiaveNomeComputer = 0
End If
End Function
Public Function mostraNomeComputer() As String
' Legge il nome del computer: restituisce una stringa vuota in caso di
errore
Dim MyName As String
Dim RegPath As String
Dim l_MyName As Long
Dim KeyType As Long
Dim risultato As Long
l_MyName = 255
MyName = String(l_MyName, vbNullChar)
RegPath = "ComputerName"
risultato = ApriChiaveNomeComputer()
If risultato > 0 Then
    risultato = MyRegQueryValueExA(risultato, RegPath, 0, KeyType, MyName,
l_MyName)
    If risultato = 0 Then
        'MsgBox "Nome Computer: " & MyName
        mostraNomeComputer = MyName
    Else
        'MsgBox "Errore nella lettura del nome del computer"
        mostraNomeComputer = ""
    End If
Else
    'MsgBox "Problemi nell'apertura della chiave del registro."
    mostraNomeComputer = ""
End If
End Function
Public Function LeggiUtenteCorrente() As String
' legge il nome dell'utente loggato: restituisce una stringa vuota in caso
di errore
Dim UsrName As String
Dim UsrLng As Long
UsrLng = 255
UsrName = String(UsrLng, vbNullChar)
If MyGetUserNameA(UsrName, UsrLng) <> 0 Then
    'MsgBox "Utente corrente: " & UsrName
    LeggiUtenteCorrente = UsrName
Else
    'MsgBox "Verificatosi errore nella lettura del nome dell'utente"
    LeggiUtenteCorrente = ""
End If
End Function

Grazie SIMPLEX ma dove devo inserire il codice ??
Devo creare una query ??
Ancora grazie.


 Grazie SIMPLEX ma dove devo inserire il codice ??
In un nuovo modulo VBA.
Ciao.
--
Simplex2
www.mdenittis.it
_______________