Append (méthode) sur les collections Groups et Users, ChangePassword, exemple de méthodes (VB)
Cet exemple illustre la méthode Append de la méthode Groups, ainsi que la méthode Append des utilisateurs en ajoutant un nouveau groupe et un nouvel utilisateur au système. Le nouveau groupe est ajouté à la collection Groups du nouvel utilisateur. Par conséquent, le nouvel utilisateur est ajouté au groupe. En outre, la méthode ChangePassword est utilisée pour spécifier le mot de passe utilisateur.
Notes
Si vous vous connectez à un fournisseur de sources de données qui prend en charge l’authentification Windows, vous devez spécifier Trusted_Connection=yes ou Integrated Security = SSPI au lieu des informations d’ID utilisateur et de mot de passe dans la chaîne de connexion.
' BeginGroupVB
Sub Main()
On Error GoTo GroupXError
Dim cat As ADOX.Catalog
Dim usrNew As ADOX.User
Dim usrLoop As ADOX.User
Dim grpLoop As ADOX.Group
Set cat = New ADOX.Catalog
cat.ActiveConnection = "Provider='Microsoft.Jet.OLEDB.4.0';" & _
"Data Source='Northwind.mdb';" & _
"jet oledb:system database=" & _
"'system.mdw'"
With cat
'Create and append new group with a string.
.Groups.Append "Accounting"
' Create and append new user with an object.
Set usrNew = New ADOX.User
usrNew.Name = "Pat Smith"
usrNew.ChangePassword "", "Password1"
.Users.Append usrNew
' Make the user Pat Smith a member of the
' Accounting group by creating and adding the
' appropriate Group object to the user's Groups
' collection. The same is accomplished if a User
' object representing Pat Smith is created and
' appended to the Accounting group Users collection
usrNew.Groups.Append "Accounting"
' Enumerate all User objects in the
' catalog's Users collection.
For Each usrLoop In .Users
Debug.Print " " & usrLoop.Name
Debug.Print " Belongs to these groups:"
' Enumerate all Group objects in each User
' object's Groups collection.
If usrLoop.Groups.Count <> 0 Then
For Each grpLoop In usrLoop.Groups
Debug.Print " " & grpLoop.Name
Next grpLoop
Else
Debug.Print " [None]"
End If
Next usrLoop
' Enumerate all Group objects in the default
' workspace's Groups collection.
For Each grpLoop In .Groups
Debug.Print " " & grpLoop.Name
Debug.Print " Has as its members:"
' Enumerate all User objects in each Group
' object's Users collection.
If grpLoop.Users.Count <> 0 Then
For Each usrLoop In grpLoop.Users
Debug.Print " " & usrLoop.Name
Next usrLoop
Else
Debug.Print " [None]"
End If
Next grpLoop
' Delete new User and Group objects because this
' is only a demonstration.
' These two line are commented out because the sub "OwnersX" uses
' the group "Accounting".
' .Users.Delete "Pat Smith"
' .Groups.Delete "Accounting"
End With
'Clean up
Set cat.ActiveConnection = Nothing
Set cat = Nothing
Set usrNew = Nothing
Exit Sub
GroupXError:
Set cat = Nothing
Set usrNew = Nothing
If Err <> 0 Then
MsgBox Err.Source & "-->" & Err.Description, , "Error"
End If
End Sub
' EndGroupVB
Voir aussi
Append, méthode (groupes ADOX)
Append, méthode (utilisateurs ADOX)
Catalog, objet (ADOX)
ChangePassword, méthode (ADOX)
Group, objet (ADOX)
Groups, collection (ADOX)
User, objet (ADOX)
Users, collection (ADOX)