Questi 2 funzioni sono state prese dall'OpenNtf
e servono per cambiare eseguire lo switch ID e cambio password direttamente
da Lotus-Script.
******************************************
Declare Function SECKFMChangePassword Lib "c:\lotus\notes\nnotes.dll"
(Byval IDFile$,Byval OldPassword$,Byval NewPassword$)As Integer
Declare Function SECKFMSwitchToIDFile Lib "c:\lotus\notes\nnotes.dll"
(Byval IDFile$,Byval Password$,Byval UserName$, Byval MaxUserNameLength%,Byval
ReservedFlag&,Byval flag&)As Integer
Declare Function OSLoadString Lib "c:\lotus\notes\nlib.dll" (Byval
hModule&, Byval Status%, Byval retBuffer$, Byval BufferLength%) As
Integer
Const MAXUSERNAME=256
Type ID_INFO
Name As String
Password As String
End Type
Function APICheckError(Error%) As String
Dim s$, x%
If Error% <> 0
Then
s$ = Space$(254)
x% = OSLoadString(0, Error%, s$,
254)
If x% = 0 Then
s$ = "General Notes Error"
Else
s$ = Left$(s$,x%)
End If
APICheckError= s$
End If
End Function
Sub APISwitchID(filepath$, passwordlist, id As ID_Info, s$)
Dim Status%
Dim Flag%
Dim UserName As String
* MAXUSERNAME
ID.Name="NA"
ID.Password= "NA"
Flag%=False
Forall x In PasswordList
pword$=Cstr(x)
Print s & " Checking
Password ......" & Pword$ ,filepath$
Status%=SECKFMSwitchToIDFile(filepath$,pword$,UserName,MAXUSERNAME,0,0)
If Status% =0 Then
Print Now " Change Password SUCCESS <"
& IDFile$ & ">"
'
Call CreateIDDoc(filepath$,UserName,pword$,filepath$)
Flag%=True
ID.Name=UserName
ID.Password= Cstr(x)
Exit Forall
Else
Print "Error " & APICheckError(status%)
Print" Change Password ERROR <" &
IDFile$ & ">"
Print" ERROR <" & APICheckError(status%)&
">"
End If
Status%=0
Yield
End Forall
If Flag%=False Then
Print Now & " ERROR Could
Not Add file <" & IDFile$ & ">"
End If
End Sub
Function APIChangePword(IDFile$, OldPword$, NewPword$)As Integer
Dim Status%
Status%=SECKFMChangePassword(IDFile$,OldPword$,NewPword$)
If Status% =0 Then
Print"Change Password SUCCESS
<" & IDFile$ & ">"
APIChangePword=True
Else
Print"Change Password ERROR
<" & IDFile$ & ">"
Print"ERROR <" &
APICheckError(status%)& ">"
APIChangePword=False
End If
End Function
*****************************************
Switch ID e cambio PASSWORD in LS
- 07/26/2005
- 0 commenti
0 Commenti:
Nessun Commento Trovato