Domino Admin管理客户机中为每个管理域设置不同的图标

大家好,才是真的好。

一直在讲Domino管理中的单个网络 域,很少讲到多个Domino网络域的管理。其实,很多企业会有多个Domino网络域。因为以前多个部门或组织、企业等合并,或者隔离国内和国外的目录隔开等等,都会产生多个names.nsf目录,产生多网络域环境。

在这种环境下,我们在进行不同的网络域管理时,一般都是通过Domino Admin管理客户机中的网络域图标来切换实现,如下图:
Domino Admin管理客户机中为每个管理域设置不同的图标_第1张图片
看起来是不是一模一样,很难区分?

所以,很多管理员在苦苦思索,如何通过不同的图标的方式来实现快速切换?

嗯,国外有个哥们在此方面进行了研究,而且乐此不彼,一直研究出来为止,效果如下图:
Domino Admin管理客户机中为每个管理域设置不同的图标_第2张图片
我们不卖关子,直接上答案:该图标存在于Domino Admin管理客户机的bookmark.nsf数据库中,你可以用Designer客户机打开该数据库,找到AdminBookmarkOrder大纲,编辑一下,如下图:
Domino Admin管理客户机中为每个管理域设置不同的图标_第3张图片
然后将你上传的图标上传即可,如下图:
Domino Admin管理客户机中为每个管理域设置不同的图标_第4张图片
重新启动一下Domino Admin客户机,即可看到网络域图标变成你指定的图片了。

当然如果你不想手动编辑的话,也没关系,可以采用下面的代码来进行更新:

%REM
     Created Jun 10, 2023 by Thomas Hampel
     Description: Comments for Agent
%END REM
Option Public
Option Declare

Sub Initialize
     Dim s As New NotesSession
     Call SetAdminBookmarkImage ("INTERN", "HCL Domino_Color_Icon_32.png")
End Sub

%REM
     Function AdminBookmark
     Description: Comments for Function
%END REM
Function SetAdminBookmarkImage (DomainName As String, ImageName As String) As Boolean
     Dim outline As NotesOutline
     Dim oe As NotesOutlineEntry
     SetAdminBookmarkImage = False
     '# open Bookmarks.nsf locally
     Dim db As New NotesDatabase ("", "bookmark.nsf")
     If Not db.isopen Then
             Print "Unable to open bookmark.nsf"
             Exit function
     End If    
     '# get Outline
     Set outline = db.GetOutline("AdminBookmarkOrder")
     Set oe = outline.GetFirst()
     '# first Outline entry level (must) have label "($Admin)"
     If oe.Label = "($Admin)" Then
             '# step one level down
             Set oe = outline.Getchild(oe)             
             '# loop all children
             While Not oe Is Nothing
                     If (oe.Label = DomainName$) Then
                             '# set imageName
                             Print "Changing bookmark icon image of " & oe.label & " to " & ImageName$
                             oe.Imagestext = ImageName$
                             Call Outline.Save()
                     End If                     
                     Set oe = outline.Getnextsibling(oe)
             Wend             
     End If
          SetAdminBookmarkImage = true
End Function

不过,这里也有一个不太好的消息,就是如果你尝试在Domino Admin中更新服务器列表时,该图标会消失。好在你可以用代码很快地再写回来。

还有一个好消息,如果你使用Domino 14版本,有个管理中心数据库Admin Central,它会每个域创建不同的数据库图标。

该技术文档原文地址:https://blog.thomashampel.com/blog/tomcat2000.nsf/dx/admin-client-custom-icons-for-each-domain.htm

欢迎阅读。

今天我们就讲到这里吧。更多文章可关注微信公号:协作者

你可能感兴趣的:(Domino,Domino,Admin,图标)