文章編號: 286408 - 上次校閱: 2008年11月19日 - 版次: 4.1 Outlook 和 Exchange 用戶端擴充功能的描述
重要當 Microsoft Outlook 98 發行,且尚未更新以反映較新的資訊可能會套用至之後的版本的 Outlook,已原來撰寫白皮書,本文中。此外,提供本白皮書結尾的額外資源的清單尚未更新,而且可能已經過期。本文將不會更新以更正過時或不正確的錯誤資訊。 在此頁中結論本文包含"Microsoft Outlook 和 Exchange 用戶端延伸模組"本白皮書是先前可以使用在 MSDN 網站上的三月 1998年日期載明為文字。 其他相關資訊簡介Microsoft Outlook 是 Microsoft Office 首要傳訊與網際網路和 Microsoft Exchange Server 的共同作業用戶端。Outlook 可協助使用者透過電子郵件、 電話、 群組排程及即時的 Microsoft NetMeeting 會議軟體與其他人進行通訊。它可讓其他人透過網際網路連線能力、 Microsoft Exchange 伺服器及電子表單,並為自訂的共同作業解決方案元件與共用資訊的使用者。Outlook 也整合,並組織所有這個通訊和在某一應用程式中的共用的資訊。 大幅擴充 Outlook 應用程式開發人員能力增強了其可用性。新增自訂的功能、 覆寫預設行為、 使用現有的 Outlook 功能和整合現有的 Exchange 用戶端擴充功能可讓要完全自訂的 Outlook 已經高度的潛力。 本文將會提供簡短的介紹到 [訊息應用程式發展介面 (MAPI) 和高階瞭解其包括 Microsoft Exchange Server 的案例中的角色。下列說明的 Exchange 與 Outlook 用戶端是討論用戶端擴充功能和裝載 Outlook 的 Exchange 用戶端擴充功能的相關資訊。 很有幫助,但不是一定要理解本文,是 C + + 物件導向程式設計技術、 元件物件模型 (COM) 和 Microsoft Win32 應用程式發展介面 (API) 的一個中繼層級知識。雖然 MAPI 簡介包含但是很有幫助如果您已經有一些訊息開發經驗。 要建立用戶端擴充功能,您應該徹底了解,而且可以實作 Microsoft Exchange IExchExt 擴充性介面。您應該可以存取來參考 C + + 物件導向程式設計技術、 COM 及 MAPI 的材料。若要撰寫的延伸為 Outlook,應該具有完整瞭解的 Outlook 物件模型。 背景資訊Exchange 用戶端擴充功能的說明的開頭必須簡介 MAPI,和它與 Exchange 伺服器的互動方式。MAPI 不只是函式,但是整個訊息子系統及其所有相互作用元件的規格的程式庫。MAPI 是設計用來實現三個原則需求:
延伸的 MAPI 規格包括定義各種外部元件,它們執行的工作的描述和它們公開的介面清單。元件之間的介面並不是 API,但是 COM 介面。COM 元件繫結在一起,表單的應用程式,而且可以擴充為開發自訂應用程式副檔名。所有的 MAPI 元件使用,或實作 MAPI 物件,所有的 MAPI 物件是 COM 物件。 在所有的 Microsoft Windows 桌上型電腦上使用 MAPI。Windows 訊息處理子系統 (WMS) 是 MAPI 標準使用者介面。WMS 原先稱為在 Exchange 用戶端,但已重新命名為減輕混淆。複雜結構 MAPI 會提供許多不同架構的觀點:
當 Microsoft Exchange 伺服器會傳送訊息時,它依賴 MAPI 子系統來引導至一個或多個傳輸服務提供者的用戶端要求。Microsoft Windows 動態連結程式庫 (DLL) 做為驅動程式針對每一個傳輸提供者。它們也提供 MAPI 多工緩衝處理程式與基礎的郵件系統或服務之間介面。 Exchange 伺服器會繼續支援的網路通訊協定 (例如 RPC,IMAP4、 POP3、 NNTP、 HTTP,以及等等),最寬的可能陣列,但它仍會繼續進行以支援 MAPI 作為程式設計介面。 什麼是 Exchange 用戶端?Microsoft Exchange 戶端隨附 Microsoft Exchange Server 版本 5.0,透過 4.0 版是採用了 Microsoft Exchange Server 作為其服務提供者的應用程式 (Exchng32.exe)。它提供了一個使用者介面,以瀏覽和操作通用的 [收件匣] 提供一種方法。有是中左邊的窗格和在右窗格中的資料夾內容清單的資料夾階層資料表,而。Exchange 用戶端提供使用者有機會來要求這些資料表的不同檢視、 建立和傳送訊息,及使用許多其他功能。在它的功能有限,但因為它已設計的彈性和擴充性,允許開發人員建置更精確地反映出他們的使用者需求的系統。Exchange 用戶端,所支援,但並不是隨附於 Microsoft Exchange Server 5.5。程式碼基底的未來變更會限制成客戶要求、 快速修正程式工程的修改,會影響使用、 互通性,及/或部署的問題。 什麼是 Outlook 用戶端?Outlook 是完全最佳化 Microsoft Exchange Server 5.0 及更新版本的用戶端。發行版本的 Microsoft Exchange Server 和包含在 Microsoft Office 97 5.0,Outlook 97 結合了電子郵件、 行事曆和排程連絡人的功能以及工作管理 journalizing,及自訂表單為基礎的應用程式在單一介面。Outlook 98 還包括完整、 原生支援主要網際網路郵件、 新聞和等 IMAP4]、 [LDAP]、 [HTML]、 [NNTP]、 [MIME,] 及 [S/MIME [目錄] 標準和也支援這些網際網路行事曆和連絡人標準: vCard、 vCalendar 和 iCalendar 空閒-忙碌查閱。Outlook 被設計用於網際網路通訊協定 (SMTP/POP3 和 IMAP4)、 Microsoft Exchange Server 或其他支援包括語音信箱的 MAPI 的標準為基礎的通訊系統。Outlook 可讓其他 Microsoft Office 應用程式完整存取其資料。其物件程式庫您可以啟用存取由其他應用程式到 Outlook 電子郵件、 約會、 工作、 日誌項目及備忘稿。Outlook 物件程式庫因為與 Microsoft Office 產品家族其整合的允許以程式設計方式存取 Office 命令列] 和 [Office 小幫手。物件程式庫支援的使用者介面和資料分隔 ; 根應用程式物件可讓您使用單一行程式碼建立新的郵件訊息。在 Microsoft Visual Basic 指令碼版 (VBScript),例如: 您可以使用 Visual Basic 的應用程式 (VBA) 的子集的 VBScript 來擴充 Outlook 表單功能。Outlook 不會裝載 VBA。 您可以使用 「 自動化 」 的 Outlook 物件來存取資訊儲存庫。您撰寫 Visual Basic 或 Visual Basic Visual]、 [Microsoft Excel]、 [Microsoft Access]、 [Microsoft Word] 或 [Microsoft PowerPoint 中的應用程式程式碼。 Outlook 是擴充性和協力廠商解決方案的平台,可讓企業研發人員、 解決方案提供者與協力廠商軟體開發人員建置擴充 Outlook 功能的附加元件應用程式。Outlook 是首要的電子郵件用戶端,Microsoft Office 和升級到 Microsoft Exchange 用戶端 」 及 「 Schedule +。 Outlook 98 建置 Outlook 97 的角色,為完全最佳化的依賴的 Microsoft Exchange Server 和其群組行事曆及共同作業功能,其商務關鍵的內部網路的可擴充及進階電子郵件功能的公司快速成長數目的用戶端上。Outlook 98 相互操作與 Outlook 97 及較早版本的 Microsoft 郵件]、 [Microsoft Exchange 用戶端] 或 [Schedule +,而不需要是 Microsoft Exchange 伺服器升級。 什麼是 Exchange 用戶端擴充功能?Exchange 用戶端副檔名是一個元件物件實作 Exchange IExchExt 介面和符合與 Microsoft Windows 元件物件模型。這個介面會定義在 Win32 軟體開發套件 (SDK) 標頭檔 Exchext.h,並且可以讓用戶端載入所有的內容中的擴充物件。用戶端載入物件伺服器,並再建立用戶端的每個可延伸內容之擴充物件的執行個體。搜尋 MSDN 程式庫平台 SDK 文件以取得詳細的資訊,有關介面內容中的標題 「 關於用戶端延伸模組"。用戶端擴充功能會建立以利用用戶端的現有的能力。會使用這些固有的能力,並由延伸加入自訂介面。而非開發全新的使用者介面和訊息服務,延伸會展開,並且利用現有的功能。 與標準的 COM 同處理序伺服器的 Exchange 用戶端延伸,是,因為它不具有一個 CLSID 識別其類別並不會登錄在系統登錄的 HKEY_CLASSES_ROOT 機碼下其伺服器不同的。改,擴充類別識別本身具有做來標記登錄機碼 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Exchange\Client\Extensions 下的其登錄字串的可列印字串。擴充伺服器匯出傳回擴充物件的新執行個體的進入點。視需要,用戶端查詢其他介面離這個物件。有的擴充程式的四個主要類型:
如何製作 Exchange 用戶端延伸在 Outlook 中工作雖然 Outlook 會辨識、 載入,並執行 Microsoft Exchange 用戶端擴充功能的規格來擴充功能,以符合,存在改善效能的方法,並且建立新增的功能。用戶端延伸登錄項目是一系列的分號 (;) 所組成的字串值-分隔的欄位。項目是以區別此項目從其他登錄機碼之下的值的唯一的標記名稱識別。項目是由六個欄位所組成。前兩個所需,並識別版本號碼的登錄項目但副檔名為 DLL 的路徑。接下來四個欄位是選擇性識別序數的進入點、 內容地圖、 介面對應和伴隨的用戶端延伸一個服務提供者的服務名稱。如果這些四個欄位是空的用戶端會提供合適的預設值為空的每個欄位。 用戶端擴充功能匯出其名稱和在其登錄項目中的進入點 HKEY_LOCAL_MACHINE\Software\Microsoft\Exchange\Client\Extensions 它啟動,並載入在此機碼中有一個項目每個副檔名時,預設值,Exchange 用戶端會讀取擴充的登錄機碼。載入每個延伸程式庫之後, 用戶端建立擴充功能物件從每一個它遇到的每一個擴充性內容這些程式庫除非延伸程式庫已指定其內容對應未處理特定的內容。 Outlook 與 Exchange 用戶端會使用相同的設定檔和其他組態資訊,而且可以使用所有 Microsoft Exchange 用戶端擴充功能和自訂表單。Outlook 會辨識、 載入,和擴充功能,以符合執行 Microsoft Exchange 用戶端擴充功能的規格時, 可以改善執行的延伸效能,而且藉由提供延伸模組設定檔案 (ECF) 增加它的功能,在 [Outlook。使用一個 ECF,Outlook 知道超前時間延伸需要載入,哪些命令副檔名促成,擴充功能套用到 [Outlook 模組內容等。這可讓 Outlook ?延遲載入擴充功能,直到需要它。 沒有一個 ECF 延伸登錄本身只在登錄中。在登錄] 項目延伸可以指定的資訊僅限於 DLL]、 [進入點]、 [二進位內容對應]、 [二進位的介面對應] 及 [如果有的話) 的提供者。一個 ECF 但是,允許副檔名為註冊本身更完整且詳細資料。如果一個 ECF 載入的延伸,並不會使用為擴充功能的登錄項目。因此,[ECF 必須包含擴充功能的完整的說明。[ECF 提供使用標準的 INI 檔案格式的文字資訊。沒有只有一個 ECF 每個副檔名和每 ECF 只能有一個副檔名。如撰寫一個 ECF 相關的詳細資訊,"Outlook 延伸模組設定檔案文件,」 主題,請在搜尋 MSDN] 程式庫 Microsoft Office 程式開發文件。 Outlook 用戶端會讀取登錄資訊一次的延伸和效能的理由,轉移它到內部快取。這個內部快取是個 extend.dat 檔位於 Windows 目錄中。Outlook 會使用 extend.dat 檔來記錄載入至 Outlook 的所有副檔名為 DLL 的路徑。 第一次開始一個 Outlook 工作階段或安裝的延伸後任何時候解除安裝,或升級,Extend.dat 將改寫以新的 DLL 路徑。已刪除的擴充功能不會再將 Extend.dat 檔案中有項目。如果不想要的擴充程式已經載入到 Outlook,您必須手動移除它們使用 [增益功能管理員]。在 Outlook 97 增益功能管理員是可以從 [工具] 功能表存取按一下 [選項],選取 [一般] 索引標籤,然後按一下 [增益功能管理員。向將延伸只是下捲動,直到您找出擴充功能、 清除其名稱旁邊的核取方塊、 按一下 [移除,並按一下 [確定]。在 Outlook 98 增益功能管理員由 clinking 選項,然後選取 [其他] 索引標籤、 按一下 [進階選項 上,,選取 [增益功能管理員 從 [工具] 功能表存取。 Exchange 用戶端並沒有一個 Extend.dat] 檔案也的確有一個使用 ECFs 的增益集管理員。 附註兩個用戶端之間主要差異之一是 Outlook 不會啟用存取產品的使用者介面的延伸模組的事實,也就是,來直接操作 HWNDs。如果 Exchange 用戶端延伸操縱視窗控制代碼在 Exchange Server,則可能是此擴充功能將無法正常運作在 Outlook 中。 安裝擴充功能的方法在 Exchange 中不同伺服器與 Outlook 的。在 [Exchange 伺服器,您只需新增新登錄項目對延伸模組中: HKEY_LOCAL_MACHINE\Software\Microsoft\Exchange\Client\Extensions 4.0;Outxxx.dll;7;000000000000000;0000000000;OutXXX HKEY_LOCAL_MACHINE\Software\Microsoft\Exchange\Client\Extensions 附註在 Windows Vista Outlook 將無法刪除這個機碼,一般使用者帳戶下執行。因此,安裝 Exchange 用戶端延伸模組時您應該檢查機碼存在: HKEY_CURRENT_USER\Software\Microsoft\Office\<version>\Outlook\Exchange Client Extension 如何存取 Outlook 物件模型如果想存取 Outlook 物件模型從內延伸 Microsoft 發佈的介面稱為 IOutlookExtCallback 為此目的。下列程式碼是標頭檔:建議您閱讀學習有關 Outlook 物件模型的最佳資源是 Microsoft Outlook Visual Basic 參考。這個說明檔會可用,如部分的開發工具新增-在的也包含的 Outlook 物件瀏覽器和指令碼偵錯工具。也看看下列:
http://mspress.microsoft.com/
(http://mspress.microsoft.com/)
這篇文章中的資訊適用於:
機器翻譯重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。 按一下這裡查看此文章的英文版本:286408?
(http://support.microsoft.com/kb/286408/en-us/
)
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。 | 其他資源 其他支援網站社群立即取得協助文章翻譯
|






Windows Live
Facebook
Twitter
Linkedin
Digg it
Yahoo
Delicious
StumbleUpon
Yammer
Reddit
Technorati
FriendFeed
Email


回此頁最上方
