作者 主題: [分享]轉貼outlook電子表單製作  (閱讀 7341 次)

0 會員 與 1 訪客 正在閱讀本文。

小徒兒

  • 鑽研的研究生
  • *****
  • 文章數: 622
    • 檢視個人資料
[分享]轉貼outlook電子表單製作
« 於: 2008-06-12 14:48 »
***outlook object
Application object
NameSpace object
==============
代碼: [選擇]
'列出信箱所有信
Set oInbox = Application.GetNameSpace("MAPI").GetDefaultFolder(6)
Set oItems = oInbox.Items
'Notice how you can get the count
For i = 1 to 3
Msgbox oItems(i).Subject
Next



MAPIFolder object
代碼: [選擇]
Dim WithEvents oApp As Outlook.Application
Dim WithEvents oNS As Outlook.NameSpace
Dim WithEvents oItems As Outlook.Items
Dim oFolders As Outlook.Folders
Dim oFolder As Outlook.MAPIFolder
Dim WithEvents oExplorer As Outlook.Explorer

'get the folder by specific name
Set oNS = oApplication.GetNamespace("MAPI")
Set oFolder = oNS.Folders("Public Folders").Folders("All Public Folders").Folders("CITS")

'list all folders
Set oFolders = oNS.Folders("Public Folders").Folders( _
         "All Public Folders").Folders

If Not (oFolders Is Nothing) Then
        Set oFolder = oFolders.GetFirst
        Do While Not (oFolder Is Nothing)
           'ListFolderscontent oFolder
           If oFolder Is Nothing Then
              Set oFolder = oFolders.GetNext
           Else
              Exit Do
           End If
        Loop

end if




代碼: [選擇]
'find out folder by link
strURL = "file://.//companydomain/myfolder/Events/"

strSQL = "SELECT ""urn:schemas:httpmail:subject"" " & _
   "FROM """ & strURL & """"


Explorer object
代碼: [選擇]

Set myPane = myExplorer.Panes("OutlookBar")
Set myPanecontent = myPane.Contents


Items collection
Inspector object
PostItem object
Pages collection

MailItem object


代碼: [選擇]
Set conn = New ADODB.Connection
With conn
   .Provider = "exoledb.datasource"
   .Open strURL
End With
'Create a new Recordset object
Set rst = New Recordset
With rst
   'Open Recordset based on the SQL string
   .Open strSQL, conn
End With

If rst.BOF And rst.EOF Then
   Msgbox "No values found!"
   End
End If

iCount = 0
rst.MoveFirst
Do Until rst.EOF
   iCount = iCount + 1
   strFrom = rst.Fields("urn:schemas:mailheader:from").Value
   Debug.Print "From: " & strFrom
   rst.MoveNext
Loop
Debug.Print "There are " & iCount & _
   " distinct FROM addresses in your inbox."


代碼: [選擇]
'get mails by .net
 using   System.Reflection;   
  private   void   ReadMail()   
  {   
        ADODB.RecordsetClass   aRS   =   new   ADODB.RecordsetClass();   
        ADODB.ConnectionClass   aConn   =   new   ADODB.ConnectionClass();   
        string   strurl   =     @"file://./backofficestorage/"+GetDomainName+"/mbx/"+strchanged+"/收件箱/";   
      //GetDomainName = exchange server domain
      //strchanged = mail receipt name

          aConn   .provider="exoledb.datasource";   
          aConn   .Open(strurl,String.Empty,String.Empty,0);   


          string   strQ="";   
          strQ   =   "select   ";   
          strQ   =   strQ   +   "   \""urn:schemas:mailheader:thread-topic"\"";   //topic       
          strQ   =   strQ   +   ",   \""urn:schemas:httpmail:displayto"\"";   //receipt name   
          strQ   =   strQ   +   ",   \""urn:schemas:httpmail:displaycc"\"";   //cc name 
          strQ   =   strQ   +   ",   \""urn:schemas:httpmail:thread-topic"\"";   
          strQ   =   strQ   +   ",   \""urn:schemas:httpmail:priority"\""   ;//priority
          strQ   =   strQ   +   ",   \""urn:schemas:httpmail:importance"\""   ;   //importance   
            strQ   =   strQ   +   ",   \""urn:schemas:mailheader:message-id"\"";   
          strQ   =   strQ   +   ",   \""urn:schemas:httpmail:htmldescription"\"";//mail content   
          strQ   =   strQ   +   ",   \""urn:schemas:httpmail:subject"\"";   
          strQ   =   strQ   +   ",   \""urn:schemas:httpmail:sendername"\"";   
          strQ   =   strQ   +   ",   \""urn:schemas:mailheader:received"\"";   //receive date
          strQ   =   strQ   +   ",   \""DAV:contentclass"\"";     //content class 
          strQ   =   strQ   +   ",   \""DAV:displayname"\"";     //displayname
          strQ   =   strQ   +   ",   \""DAV:id"\"";     //mail primary key id
          strQ   =   strQ   +   ",   \""DAV:href"\"";     
          strQ   =   strQ   +   "   from   scope   ('shallow   traversal   of   "   ;//what kind of search
          strQ   =   strQ   +   "\""   strurl     +   "\"')   ";   
          strQ   =   strQ   +   "where   \""urn:schemas:mailheader:message-id"\"='"+itemtypes+"'and   \""DAV:contentclass"\"<>'urn:content-classes:document'";   

        aRS.Open(strQ   ,aConn,ADODB.CursorTypeEnum.adOpenForwardOnly,ADODB.LockTypeEnum.adLockReadOnly,0);   
        while(!aRS.EOF)   
        {   
                    Response.Write("mailconten"+aRS.Fields("urn:schemas:httpmail:htmldescription").Value.ToString());   
                    string   strmsgurl=strurl+aRS.Fields("DAV:displayname").Value.ToString();   
                    CDO.MessageClass   cMsg=new   CDO.MessageClass();   
                    cMsg.DataSource.Open(strmsgurl,o,ADODB.ConnectModeEnum.adModeRead,ADODB.RecordCreateOptionsEnum.adOpenIfExists,ADODB.RecordOpenOptionsEnum.adOpenSource,String.Empty,String.Empty);     
                      if(cMsg.Attachments.Count>0)   
  {   
          foreach(CDO.IBodyPart   ibd1   in   cMsg.Attachments)   
          {   
                              }   
  }   
                  Rs.MoveNext   
        }   
  }




Page object
ContactItem object
Controls collection
AppointmentItem object
Control object
MeetingItem object


TaskItem object
AddressLists collection
Recipients collection
AddressList object
Recipient object
AddressEntries collection
UserProperties collection
AddressEntry object
UserProperty object
Folders collection
FormDescription object

 
***regedit
[HKEY_CURRENT_USER\Software\Policies\Microsoft\Office\9.0\Outlook\Webview\mailbox]
"url"="http://YOURLOCATION/default.htm"
"navigation"="yes"





建立表單和控制項
1. 開啟您的 [ 收件匣 ], 然後開啟新郵件表單。 
2. 表單, [ 工具 ] 功能表上按一下 [ 「 設計表單 Outlook ] 」 進入設計模式。 
3. " 顯示此頁面 」 在表單 ] 功能表, 按一下 [ 按一下 [ (P.2) ] 索引標籤, 並。 
4. 在 [ 表單 ] 功能表, 按一下 [ 工具箱 」 控制項 ] 」 以顯示 [ 控制工具箱 ]。 
5. 拖曳至頁面的表單 P.2 ComboBox 控制項。 
6. 拖曳至頁面的表單 P.2 TextBox 控制項。 

回此頁最上方

ComboBox 控制項繫結至欄位
名為 Field 1, 至 ComboBox 控制項欄位, 繫結執行下列步驟。 這個欄位是 Red、 Blue 和 Green, 的可能值。 1. 在 P.2 表單頁面, 使用您的下拉式方塊按一下滑鼠右鍵並在快速鍵功能表, 按一下 [ 內容 ]。 
2. 按一下 [ 數值 ] 索引標籤及 [, 新增 ] 以建立新的使用者定義欄位。 
3. 在 [ 名稱 ] 方塊, 再鍵入 Field 1 及確定 ], 以返回到 [ 內容 ] 對話方塊。 Field 1 是任意使用者定義欄位名稱。 
4. 在越慢越好 「 值 」 方塊, 紅色; 綠色; 藍色輸入然後按一下 [ 確定 ] 

回此頁最上方

TextBox 控制項繫結至同一個欄位
執行下列步驟也控制 TextBox 項繫結至 Field 1 欄位。 1. 以滑鼠右鍵按一下文字方塊控制項然後在快速鍵功能表, 按一下 [ 內容 ]。 
2. 按一下 [ 數值 ] 索引標籤, 按一下 [ 選擇欄位 ], 按一下 [ User - defined, 收件匣 ] 中的欄位然後按一下 Field 1 欄位。 
3. 按一下 [ 確定 ] 以關閉 [ 內容 ] 對話方塊。 
4. 在 [ 工具 ] 功能表, 按一下 [ 「 設計表單 Outlook ] 」 以結束設計模式。 
當您按一下可供選取 Red、 Blue 或綠色下拉式方塊, 您選擇自動填入 TextBox。
« 上次編輯: 2008-06-13 11:24 由 小徒兒 »