Exchange 2000徹底解剖
開発環境としてのExchange 2000 Server

CDO

 いままで説明してきたWebDAVによるアクセスやADOコンポーネントによるアクセスは,Exchange 2000 Serverを汎用的に利用するためのアクセス手法である。それに対して,Exchange 2000 Serverにネイティブな方法でアクセスすることもできる。そのような機能を提供するのが,CDOコンポーネントである。

 CDOという名前を冠するCOMコンポーネントはたくさんあるため,ここでどのようなCDOコンポーネントが提供されているのかをまとめておく。

 CDOコンポーネントは,Exchange Server 5.0のときにActive Messagingという名前で登場したCOMコンポーネントの発展系である。Active Messagingは,Exchange Server 5.5で大幅に機能拡張され,CDOと改名された。その一方でIIS 4.0には,Windows NT Server上で単体稼働するサブセット版としてCDONTS(CDO for Windows NT Server)コンポーネントが収録された。Exchange 2000 Serverに付属しているCOMコンポーネントは,CDOEX(CDO for Exchange 2000 Server)コンポーネントである。各コンポーネントの関係を表にすると,Table 6のようになる。

Table 6 CDOコンポーネント(クリックすると表を拡大可能

種類Exchange 5.0Exchange 5.5IIS 4.0Windows 2000Exchange 2000
Active Messaging××××
CDO 1.2×××
CDO 1.2 for Windows NT Server(CDONTS 1.2)×
CDO for Windows 2000 Server(CDO 2.0)××××
CDO for Exchange 2000 Server(CDO 3.0)××××

 Table 6を見るとわかるように,Exchange 2000 Serverでは,(1)CDO 1.2,(2)CDO 1.2 for Windows NT Server(CDONTS 1.2),(3)CDO for Exchange 2000 Server(CDO 3.0),のいずれかを使うことになる。このうち,(1)と(2)は過去との互換性を保つために提供されているので,これから開発するのであれば,(3)を使って開発することになる。

 このように,CDOコンポーネントは分岐しつつバージョンアップしてきた経緯があるものの,基本的な操作はあまり変わっていない。CDO 3.0では,COMオブジェクトの階層が簡略化されたので,開発者は階層構造やコネクション(Sessionオブジェクト)を意識することなく,直接メッセージ(Messageオブジェクト)や予定帳(Appointmentオブジェクト)を扱うことができるようになった。たとえば,CDO 3.0を用いてメールを送信するプログラムを開発すると,List 13のようになる。List 13は単純にメールを送信するだけだが,添付ファイルを付けて送信したり,HTMLメールを送信したりすることも容易である。それらの操作の詳細は,Exchange 2000 Platform SDK(http://msdn.microsoft.com/exchange/)のReference項目に記載されているので参照してほしい。

 CDOコンポーネントは,メールアイテムや予定帳など,Exchange 2000 Serverが提供するメッセージコラボレーション機能の操作に向いている。それに対し,WebDAVやADOコンポーネントによる操作は,各アイテムがメールであるのか文章であるのか音声ファイルであるのか画像ファイルであるのかといった区別なく,単なるアイテムとしての操作を提供する。よって,Exchange 2000 ServerのWeb Storage Systemをさまざまなデータを保持するデータストアとして利用するという用途であれば,CDOコンポーネントによるアクセスよりもWebDAVやADOコンポーネントによるアクセスのほうが適する。

Prev 21/27 Next