Hello Avi,
Looks like the TSengine doesn't handle the save and update operations when invoking 'NewUser' method, so you have to handle these by your own. The following code (which is the menu callback for creating a new user in an Operator interface) might give you an answer for your question:
Private Sub NewUser_Click()
Dim objNewUser As User
Dim tmpUser As User
Dim users As PropertyObject
Dim OkCancel As Boolean
Dim loginName As String
Dim usersFilePath As String
Const USERS_FILE_NAME As String = "\users.ini"
Const USER_LISTS As String = "UserLists.Users" 'section of file containing user lists
'Check if the current user has 'EditUsers' privileges
If Data.TestEngine.CurrentUserHasPrivilege(Priv_EditUsers) Then
OkCancel = Data.TestEngine.DisplayNewUserDialog("New User", True, objNewUser)
If OkCancel Then
'Get user login name
loginName = objNewUser.loginName
'Get users file path
usersFilePath = Data.TestEngine.ConfigDirectory
usersFilePath = usersFilePath + USERS_FILE_NAME
'Create new object for all users
Set users = Data.TestEngine.NewPropertyObject(PropValType_Container, False, "", 0)
'Read all users from users.ini
Call users.Read(usersFilePath, USER_LISTS, 0)
'Check if user name already exist
If Not Data.TestEngine.UserNameExists(loginName) Then
'Insert new user into user object
Call users.SetPropertyObject(loginName, PropOption_InsertIfMissing, objNewUser)
'Write user object back to users.ini
Call users.Write(usersFilePath, USER_LISTS, 0)
End If
End If
End If
End Sub
After executing the code above you'll have to restart the operator interface in order to see the newly created user in the 'TSEngine.DisplayLoginDialog' (seems to be a bug here).
Hope this solved your problem and
feel free for further questions
Regards,
Silvius
Silvius Iancu