Change the database title
[syntax="ls"] (Declarations)
Const APIModule = "NNOTES" ' Windows/32 only
Declare Function NSFDbOpen Lib APIModule Alias "NSFDbOpen" _
( Byval PathName As String, DbHandle As Long) As Integer
Declare Function NSFDbClose Lib APIModule Alias "NSFDbClose" _
( Byval DbHandle As Long) As Integer
Declare Function OSPathNetConstruct Lib APIModule Alias "OSPathNetConstruct" _
( Byval NullPort As Long, Byval Server As String, Byval FIle As String, Byval PathNet As String) As Integer
Declare Function NSFNoteOpen Lib APIModule Alias "NSFNoteOpen" _
( Byval hDB As Long, Byval NoteID As Long, Byval F As Integer, hNT As Long) As Integer
Declare Function NSFNoteClose Lib APIModule Alias "NSFNoteClose" _
( Byval hNT As Long) As Integer
Declare Function NSFNoteUpdate Lib APIModule Alias "NSFNoteUpdate" _
( Byval hNT As Long, Byval F As Integer) As Integer
Declare Function NSFItemSetText Lib APIModule Alias "NSFItemSetText" _
( Byval hNT As Long, Byval N As String, Byval T As String, Byval nT As Integer) As Integer
Declare Function NSFDbInfoGet Lib APIModule Alias "NSFDbInfoGet" _
( Byval hDB As Long, Byval T As String) As Integer
Declare Function NSFDbInfoSet Lib APIModule Alias "NSFDbInfoSet" _
( Byval hDB As Long, Byval T As String) As Integer
Click
Sub Click(Source As Button)
Dim db As New NotesDatabase("", "test.nsf")
info$ = db.Title _
& Chr$(10) & "Category1" _
& Chr$(10) & "Category2" _
& Chr$(10) & "Category3" _
& Chr$(10) & "#1" & "DatabaseIsTemplateName" _
& Chr$(10) & "#2" & "InheritFromTemplateName"
If Len(info$) > 127 Then
Messagebox "Too long!"
Else
SetDatabaseInfo db, info$
End If
End Sub
SetDatabaseInfo
Sub SetDatabaseInfo(db As NotesDatabase, info As String)
p$ = String(1024, " ")
OSPathNetConstruct 0, db.Server, db.FilePath, p$
Dim hDB As Long
NSFDbOpen p$, hDB
Dim hNT As Long
NSFNoteOpen hDB, &HFFFF0010, 0, hNT
If hNT = 0 Then
Messagebox "Can't open icon note"
Else
t$ = db.Title & Chr$(10) & cat
NSFItemSetText hNT, "$TITLE", info, Len(info)
NSFNoteUpdate hNT, 1
NSFNoteClose hNT
End If
NSFDbInfoSet hDB, info
NSFDbClose hDB
End Sub[/syntax]
Const APIModule = "NNOTES" ' Windows/32 only
Declare Function NSFDbOpen Lib APIModule Alias "NSFDbOpen" _
( Byval PathName As String, DbHandle As Long) As Integer
Declare Function NSFDbClose Lib APIModule Alias "NSFDbClose" _
( Byval DbHandle As Long) As Integer
Declare Function OSPathNetConstruct Lib APIModule Alias "OSPathNetConstruct" _
( Byval NullPort As Long, Byval Server As String, Byval FIle As String, Byval PathNet As String) As Integer
Declare Function NSFNoteOpen Lib APIModule Alias "NSFNoteOpen" _
( Byval hDB As Long, Byval NoteID As Long, Byval F As Integer, hNT As Long) As Integer
Declare Function NSFNoteClose Lib APIModule Alias "NSFNoteClose" _
( Byval hNT As Long) As Integer
Declare Function NSFNoteUpdate Lib APIModule Alias "NSFNoteUpdate" _
( Byval hNT As Long, Byval F As Integer) As Integer
Declare Function NSFItemSetText Lib APIModule Alias "NSFItemSetText" _
( Byval hNT As Long, Byval N As String, Byval T As String, Byval nT As Integer) As Integer
Declare Function NSFDbInfoGet Lib APIModule Alias "NSFDbInfoGet" _
( Byval hDB As Long, Byval T As String) As Integer
Declare Function NSFDbInfoSet Lib APIModule Alias "NSFDbInfoSet" _
( Byval hDB As Long, Byval T As String) As Integer
Click
Sub Click(Source As Button)
Dim db As New NotesDatabase("", "test.nsf")
info$ = db.Title _
& Chr$(10) & "Category1" _
& Chr$(10) & "Category2" _
& Chr$(10) & "Category3" _
& Chr$(10) & "#1" & "DatabaseIsTemplateName" _
& Chr$(10) & "#2" & "InheritFromTemplateName"
If Len(info$) > 127 Then
Messagebox "Too long!"
Else
SetDatabaseInfo db, info$
End If
End Sub
SetDatabaseInfo
Sub SetDatabaseInfo(db As NotesDatabase, info As String)
p$ = String(1024, " ")
OSPathNetConstruct 0, db.Server, db.FilePath, p$
Dim hDB As Long
NSFDbOpen p$, hDB
Dim hNT As Long
NSFNoteOpen hDB, &HFFFF0010, 0, hNT
If hNT = 0 Then
Messagebox "Can't open icon note"
Else
t$ = db.Title & Chr$(10) & cat
NSFItemSetText hNT, "$TITLE", info, Len(info)
NSFNoteUpdate hNT, 1
NSFNoteClose hNT
End If
NSFDbInfoSet hDB, info
NSFDbClose hDB
End Sub[/syntax]