获取注册的莲花脚本使用 OU 和 O?

lotus script to get register use OU and O?

我正在尝试从新创建的用户 ID 获取 OU 和 O

TestUser1.id

问题:我想获取新注册ID的完整路径。

1) 未登录 到该帐户 return 用户 ID 信息 ?

完整路径=CN=TestUser1/OU=Software/O=pcs

Sub Initialize
  Dim session As New NotesSession
  Dim adminp As NotesAdministrationProcess
  Set adminp = _
  session.CreateAdministrationProcess(mailsvr)
  noteid$ = adminp.SetUserPasswordSettings( _
  "CN=TestUsesr1/OU=Software/O=pcs", PWD_CHK_LOCKOUT, 0, 0, True)
  If noteid$<> "" Then
    Dim db As New NotesDatabase(mailsvr, "admin4.nsf")
    Dim ws As New NotesUIWorkspace
    Call ws.EditDocument(False, db.GetDocumentByID(noteid$))
  End If
End Sub

实际上我真正想做的是强制用户第一次登录帐户以强制用户更改 his/her http 密码

我不确定对于新创建的 ID 这是否正确?

以下 link 与此主题相关:

force notes user to change password / internet password on next login using lotus script

正如您在链接问题中部分回答的那样,强制用户更改其互联网密码非常简单:

  • 从服务器获取用户文档names.nsf
  • 将字段 HTTPPasswordForceChange 设置为“1”

这是一些示例代码(没有错误处理,没有检查语法)。 根据文档,您的 adminp- 示例也应该可以正常工作,但是如果服务器配置为检查密码,它将锁定用户并且不允许他登录...

Dim db as NotesDatabase  
Dim viwUser as NotesView
Dim docUser as NotesDocument
Set db = New NotesDatabase( yourServer, "names.nsf" )
Set viwUser = db.GetView( "($Users)" )
Set docUser = viwUser.GetDocumentByKey( "CN=TestUsesr1/OU=Software/O=pcs" )
Call docUser.ReplaceItemValue( "HTTPPasswordForceChange" , "1" )
Call docUser.Save( True, True, True )