1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142
|
Public Function fsNetUser(Optional blDebug As Boolean = False) As String
'
'[[Df]
'Nom du programme : fsNetUser
'Version : V01.0
'Type d'objet : Fonction ACCESS
'Localisation : mdUtilLAN
'Codage : AJILON
'Date de creation : 18/08/05
'
'Description : Cette fonction recherche par la biais de l'API * WNetGetUser() *
' le nom du User Windows Actif et le retourne à l'appelant
'
'Codes retour : UserName --> OK
' "" --> ERREUR
'
'Préalables : Déclaration API * WNetGetUser() *
'
'Paramètres : NA
'
'Globales : NA
'
'Objets : NA
'
'Proc appelées : NA
'
'Fonctions appelées : fiErr()
'
'Erreurs : Utilisées -->
' Réservées -->
'
'Date Auteur Modification
'18/08/05 Casa Création
'../../.. ... ...
'
'---------------------------------------------------------------
'[[Ff]
'
'Initialisation de la fonction
'------------------------------
'
fsNetUser = ""
'
'Gestion d'erreurs
'------------------
'
On Error GoTo Erreur_fsNU_Lbl
'
'Déclaration des variables
'--------------------------
'
'INTEGER
'
Dim iErr As Integer 'Code erreur en paramètre pour la fonction *Erreur_Gestion_F*
Dim iVerif As Long 'Retour de la fonction API *WNetGetUser()*
'
'STRING
'
Dim sErr As String
Dim sUser As String * 255 'Nom du User Actif
'
'VARIANT
'
Dim Erreur_V As Variant 'Retour de recherche d erreur
'
'Initialisation des variables
'-----------------------------
'
iErr = 0
'
'Recherche du User Windows Actif
'--------------------------------
'
iVerif = WNetGetUser("", sUser, 255)
'
'Retour de recherche
'--------------------
'
If iVerif = 0 Then
'
'OK
'
fsNetUser = Left(sUser, InStr(sUser, Chr(0)) - 1)
Else
'
'ERREUR
'
fsNetUser = ""
End If
'
'Etiquette de sortie
'--------------------
'
Sortie_fsNU_Lbl:
Exit Function
'
'Etiquette d'erreur
'-------------------
'
Erreur_fsNU_Lbl:
'
'Gestion de l erreur
'--------------------
'
iErr = fiErr("fsNetUser", Err, sErr, blDebug)
'
'Gestion à reponse sur erreur
'-----------------------------
'
Select Case iErr
Case 0
'
'REINITIALISATION DES VARIABLES D ERREUR
'
iErr = 0
sErr = ""
'
'PASSAGE A L INSTRUCTION SUIVANTE (Erreur ignorée)
'
Resume Next
Case 1
GoTo Sortie_fsNU_Lbl
Case 2
'
'REINITIALISATION DES VARIABLES D ERREUR
'
iErr = 0
sErr = ""
'
'RETOUR A L INSTRUCTION EN ERREUR (Retry ou Debug)
'
Resume
Case Else
'
'ERREUR DE CODAGE
'
MsgBox "Retour d erreur num : " & iErr & " erroné !"
Stop
End Select
End Function |
Partager