zoukankan      html  css  js  c++  java
  • 使用LotusScript删除私有文件夹

    'DECLARATIONS
    Const APIModule = "NNOTES"
    ' Windows/32 only
    Const NOTE_CLASS_VIEW= &H0008
    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 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 NIFFindPrivateDesignNote Lib APIModule Alias "NIFFindPrivateDesignNote" ( Byval hdb As Long, Byval NoteName As String, Byval NoteClass As Integer, NoteID As Long ) As Integer

    Sub DeletePrivateView(db As NotesDatabase, vname As String)
    ' To open a Domino database on a server, use this function to create
    ' the full path specification, and pass this specification as input to NSFDbOpen
    ' or NSFDbOpenExtended.
    p$ = String(1024, " ")
    OSPathNetConstruct 0, db.Server, db.FilePath, p$
    ' This function takes a pathname to an existing Domino database or database
    ' template (whether on a Lotus Domino Server or a local database), opens the
    ' database, and returns a handle to it. All subsequent access to the database is
    ' carried out via this handle. Use NSFDbClose to close the database file handle
    ' and deallocate the memory associated with it.
    Dim hDB As Long
    NSFDbOpen p$, hDB
    ' Given the name and NOTE_CLASS_xxx of a private design note (form, view,
    ' folder, helpindex, macro, field, or replication formula ), this function returns the note ID.
    ' Uses the View or Folder name passed to it - vname.
    Dim retNoteID As Long
    Dim result As Integer
    result = NIFFindPrivateDesignNote(hDB, vname, NOTE_CLASS_VIEW, retNoteID)
    'If result is anything other than 0, the Private Design Note could not be found
    If result = 0 Then
    Dim doc As NotesDocument
    ' Get the Private View or Folder by its NoteID
    Set doc = db.GetDocumentByID( Hex$(retNoteID) )
    Call doc.Remove( True )
    Print "Removing : " & vname
    End If
    ' This function closes a previously opened database.
    NSFDbClose hDB
    End Sub

    测试:

    Sub Click(Source As Button)
    Dim s As New NotesSession
    Dim db As NotesDatabase

    Set db = s.CurrentDatabase

    ' Pass the name of the Private View or Folder to delete
    Call DeletePrivateView(db, "CustomQuery")
    End Sub

  • 相关阅读:
    转:页面刷新方法
    CSS 浏览器兼容与解析
    转XML格式与DataTable、DataSet、DataView格式的转换
    好文共欣赏--发布收藏
    利用HttpWebRequest自动抓取51la统计数据
    Asp.net中多语言的实现
    转 启用IIS的Gzip压缩
    在asp.net web 程序中使用Sqlite数据库
    cte+xml
    trace (转)
  • 原文地址:https://www.cnblogs.com/blackbean/p/2539810.html
Copyright © 2011-2022 走看看