Function crtUser(pUtente As String, pGruppo As String, pPID As String, pAdmin As String, pAdminPwd As String)
'Autore: Vincenzo Turturro
'Funzione per creare un utente nel gruppo di lavoro corrente
'Parametri in ingresso:
' pUtente - Stringa contenente il nome da assegnare all'utente in creazione
' pGruppo - Stringa contenente il gruppo a cui si vuol assegnare l'utente pUtente
' pPID - PID da assegnare all'utente pUtente
' pAdmin - Account di un utente del gruppo "amministratori"
' pAdminpwd - Password dell'utente passato in pAdmin
'Valore restituito:
' Il nome dell'utente creato
Dim tmp As String, charpos As Integer, wsp As Workspace, usrNew As User, grpMembro As Group
Set wsp = CreateWorkspace("CRTUSR", pAdmin, pAdminPwd)
tmp = Trim$(pUtente)
' Elimina gli eventuali spazi ed apici intermedi
charpos = -1
Do While charpos <> 0
charpos = InStr(1, tmp, " ", 1)
If charpos > 0 Then
tmp = Left$(tmp, charpos - 1) + Mid$(tmp, charpos + 1)
End If
Loop
charpos = -1
Do While charpos <> 0
charpos = InStr(1, tmp, "'", 1)
If charpos > 0 Then
tmp = Left$(tmp, charpos - 1) + Mid$(tmp, charpos + 1)
End If
Loop
' Crea e accoda il nuovo utente.
Set usrNew = wsp.CreateUser(Left$(tmp, 20), pPID, "")
wsp.Users.Append usrNew
'Aggiunge l'utente al gruppo
Set grpMembro = usrNew.CreateGroup(pGruppo)
usrNew.Groups.Append grpMembro
'Aggiunge l'utente al gruppo utenti (predefinito)
Set grpMembro = usrNew.CreateGroup("Users")
usrNew.Groups.Append grpMembro
usrNew.Groups.Refresh
crtUser = Left$(tmp, 20)
wsp.Close
Set wsp = Nothing
Set usrNew = Nothing
End Function
|