Exchange で EWS を使用してアイテムをエクスポートおよびインポートするExporting and importing items by using EWS in Exchange

Exchange の EWS マネージ API または EWS を使用して、予定、メール、連絡先、タスクなどのメールボックス アイテムをエクスポートおよびインポートする方法について説明します。Learn about exporting and importing appointments, emails, contacts, tasks, and other mailbox items by using the EWS Managed API or EWS in Exchange.

Exchange は重要な情報の宝庫で、メール、連絡先、タスク、予定表は組織の機能の中核をなします。Exchange is a gold mine of important information: email, contacts, tasks, and calendars are core to an organization's functions. EWS を使用すると、3 つの異なるアプローチで中核となるアイテムの種類をエクスポートおよびインポートできます。EWS enables you to export and import core item types via three different approaches:

  • アイテム の種類の交換。アイテムを他のシステムおよびファイルとの間でインポートおよびエクスポートする場合には、このアプローチの使用をお勧めします。Exchange item types. We recommend this approach for importing and exporting items to and from other systems and files.

  • アイテム レベルの機能 (EWS のみ)。1 つの Exchange サーバーまたはメールボックスからエクスポートまたはコピーし、別のものにインポートする場合にはこのシナリオをお勧めします。Item-level capability (EWS only). We recommend this option for exporting or copying from one Exchange server or mailbox and importing to another.

  • iCalendar や vCard などの一般的な標準ファイル形式の MIME ストリーム。プロパティ セットは限定的ですし MIME への変換はコストがかかるため、少量のデータのインポートまたはエクスポートの場合にのみこのアプローチをお勧めします。MIME streams in the form of common standard file formats such as iCalendar and vCard. Because the property set is limited and MIME conversion is costly, we recommend the approach only for importing or exporting a small amount of data.


EWS は、メールボックスのバックアップと復元用には設計されていません。EWS is not designed for mailbox backup and restore. データベースをバックアップして復元するには、「バックアップと復元 API」をご覧ください。To back up and restore databases, use the backup and restore API. また、TechNet の「バックアップ、復元、および障害回復」もご覧ください。See also Backup, restore, and disaster recovery on TechNet.

表 1. 連絡先、メール、予定表アイテムのエクスポートおよびインポートTable 1. Exporting and importing contact, email, and calendar items

タスクTask EWS マネージ API メソッドEWS Managed API method EWS 操作EWS operation メモNotes
連絡先、メール、タスク、予定表アイテムのコピーをプロパティ セットを指定してエクスポートする。Export a copy of a contact, email, task, or calendar item with a specified property set.
メールボックス アイテムを Exchange 以外の別のシステムまたはファイル (vCard ファイル タイプと iCal ファイル タイプを含む) にエクスポートする場合には、このオプションをお勧めします。We recommend this option if you're exporting mailbox items to another non-Exchange system or file (including vCard and iCal file types).
エクスポートされたプロパティ セットを制御できるため、また Exchange サーバーのパフォーマンスが良いため、通常はこれが最適なオプションです。Because you have control over the exported property set, and because performance is better for the Exchange server, this is generally the best option.

メールボックス アイテムのプロパティ セットによっては、およびアイテムに設定されているスキーマ化されていないプロパティ ID (拡張プロパティ) すべてにアプリケーションが対応しているかどうかによっては、このオプションでは、完全な再現性を持つコピーを生成できない場合があります。Depending on the properties set on a mailbox item, and whether your application is aware of all of the non-schematized property identifiers (extended properties) that might be set on an item, this option might not produce a full-fidelity copy.

これらのメソッドと操作は、アイテムのスキーマ化されたプロパティ セットと、要求された拡張プロパティを提供します。These methods and operation provide the schematized set of properties for an item plus any requested extended properties.
Bind メソッドまたは GetItem 操作でアイテムを完全な再現性を持つエクスポートを行えるのは、アイテムに設定されている拡張プロパティが分かっている場合のみです。The Bind method or GetItem operation can only provide full-fidelity export of items if you know the extended properties that are set on an item.
すべての既知の拡張プロパティを要求して、完全な再現性を有効にできます。You can request all the known extended properties to enable full fidelity.

ヒント: EWS マネージ API のトレース機能を使用すると、エクスポートされたアイテムの XML 表現を取得できます。TIP: You can use the tracing feature in the EWS Managed API to get the XML representation of exported items. 詳しくは、「カスタム形式にアイテムをエクスポートする」をご覧ください。For more information, see Export an item into a custom format.
連絡先、メール、タスク、予定表アイテムのコピーをプロパティ セットを指定してインポートする。Import a copy of a contact, email, task, or calendar item with a specified property set.
Exchange にメールボックス アイテムをインポートする場合、このオプションをお勧めします。We recommend this option for importing mailbox items into Exchange.
インポートされたアイテムの状態を維持するためにいくつかのアイテムの種類で特別なプロパティを設定しなければならない場合があります。You might have to set special properties on some item types in order to maintain the state of the imported item.
一部のプロパティは Exchange によって設定されクライアントでは設定されないので、必ずしも完全に再現性のあるインポートとはなりません。Because some properties are only set by Exchange and not by clients, it's not always possible to have a full-fidelity import.

たとえば、出席者が含まれる会議をメールボックスにインポートすることはできません。Exchange が開催者と出席者との間に関係を設定しているためです。For example, you cannot import a meeting with attendees into a mailbox because Exchange sets the relationships between the organizer and attendees.
この関係は、会議出席依頼を送信する開催者、およびそれを受け取って応答する出席者だけが設定できます。This relationship can only be established by organizers sending and attendees receiving and responding to the meeting request.

Exchange の Appointment オブジェクトには複雑な関係を設定することができます。Appointment objects in Exchange can have complex relationships and settings.
出席者がいる予定 (会議) には、会議の開催者と出席者を結び付ける設定が含まれています。Appointments that have attendees (meetings) have settings that tie together the meeting organizer and meeting attendees.
これらの設定は、予定をエクスポートおよびインポートするときに維持されません。These settings are not maintained when you export and import appointments.
会議の開催者/出席者の関係をプログラムによって予定に直接再設定することはできません。Programmatically reestablishing meeting organizer/attendee relationships directly on the appointments is not supported.
こうした関係を再設定するためのオプションとしては、インポート後に処理後のタスクを実行し、開催者が会議を再送信し、出席者がそれらの会議を承諾するようにします。An option you do have for reestablishing those relationships is to perform post-processing after an import, then have an organizer resend the meetings and have the attendees accept the meetings.
Exchange の偽装を使用すると、開催者と出席者の両方に代わって呼び出しを行えます。You can use Exchange impersonation to make the calls for both the organizer and the attendees.
会議がメールボックス内の他の会議に誤って関連付けられるという事態を避けるには、Appointment オブジェクトの UID プロパティを変更してからインポートする必要があります。You should change the UID property of the Appointment object before you import to avoid having meetings be incorrectly related to other meetings in a mailbox.
連絡先、メール、タスク、予定表アイテムのコピーを完全な再現性でエクスポートする。Export a copy of a contact, email, task, or calendar item in full-fidelity.
該当なしNot applicable
これは、Exchange メールボックスに再びインポートする予定のメールボックス アイテムをエクスポートするための最適なオプションです。This is the best option for exporting mailbox items that you want to import back into an Exchange mailbox.
このオプションを使用して、メールボックス間でアイテムをコピーすることもできます。You can also use this option to copy items between mailboxes.

ExportItems 操作では、メールボックス間での情報の移動に使用できるアイテムを表す非透過ストリームが提供されます。The ExportItems operation provides an opaque stream that represents the item that you can use to move information between mailboxes.
ExportItemsGetItem 操作と併用し、別のシステムでアイテムを検索するためのインデックスを作成できます。You can use ExportItems with the GetItem operation to make an index for finding the items in another system.
エクスポート ストリームを変更することはできません。You cannot change the export stream.
詳しくは、「完全な再現性でアイテムをエクスポートする」をご覧ください。For more information, see Export items with full fidelity.
連絡先、メール、タスク、予定表アイテムのコピーを完全な再現性でインポートする。Import a copy of a contact, email, task, or calendar item in full-fidelity.
適用できませんNot applicable
これは、ExportItems 操作でエクスポートされたアイテムをインポートするための唯一のオプションです。This is the only option for importing items that were exported by the ExportItems operation.
一般的なファイルの種類の連絡先、メール、予定表アイテムのコピーを MIME ストリームとしてエクスポートする。Export a copy of a contact, email, or calendar item as a MIME stream for a common file type.
MimeContent プロパティを使用して、アイテムの MIME ストリーム表現を取得できます。You can use the MimeContent property to get the MIME stream representation of an item.

このストリームは、アイテムのすべてのプロパティの基本的なすべてのサブセットを提供します。This will provide a basic subset of all the properties on an item.
1 回限りの操作ではこの MIME ストリームだけを使用するのがベスト プラクティスです。As a best practice, only use the MIME stream for one-off operations.
大規模で頻繁なアイテムのインポート/エクスポートでは MIME を使用しないでください。Exchange は MIME コンテンツの変換を実行するので、パフォーマンスに影響を及ぼす可能性があるためです。Do not rely on MIME for large and frequent importing/exporting of items, because Exchange performs content conversion for the MIME and this can affect performance.

Contact MIME ストリームは、vCard (.vcf) ファイルです。The Contact MIME stream is a vCard (.vcf) file.
連絡先に設定されているプロパティ セットによっては、完全な再現性のコピーが生成されない可能性があります。Depending on the properties set on a contact, this might not produce a full-fidelity copy.
vCard MIME ストリームを使用して、連絡先をインポートすることはできません。Note that you cannot import a contact by using the vCard MIME stream.
詳しくは、「vCard ファイルに連絡先をエクスポートする」をご覧ください。To learn more, see Export a contact into a vCard file.

EmailMessage MIME ストリームは .eml ファイルです。The EmailMessage MIME stream is an .eml file.
.eml 形式は、Outlook およびその他のメール クライアントが識別できるので便利です。The .eml format is convenient because Outlook and other email clients can identify it.
また、この MIME ストリームを使用して .mht ファイルを作成できますが、多くのブラウザーがこのファイルの種類を使用できるので便利です。You can also use the MIME stream to create an .mht file, which is convenient because many browsers can use that file type.
EWS では、メールを .msg ファイルにエクスポートするための .msg ファイル ストリームは提供されません。EWS doesn't provide a .msg file stream for exporting an email to a .msg file.
.msg ファイルをエクスポートするには、EmailMessage.Bind メソッドの結果または GetItem 操作の呼び出し結果から .MSG ファイルを構築するか、サード パーティ製 API を使用して EWS を呼び出した結果から .msg ファイルを構築します。Your options for exporting an .msg file are to either construct an .MSG file from the results of an EmailMessage.Bind method or GetItem operation call, or use a third-party API that calls EWS and constructs the .msg file from the results.
詳しくは、「.eml ファイルとしてメールをエクスポートする」をご覧ください。For more information, see Export an email as an .eml file.

Appointment MIME ストリームは iCal (.ics) ファイルです。The Appointment MIME stream is an iCal (.ics) file.
.ics 形式は、Outlook およびその他のメール クライアントが識別できるものなので便利です。The .ics format is convenient because Outlook and other email clients can identify it.
この MIME ストリームでは、出席者情報が提供されないため、会議をエクスポートするためにこのオプションを使用することはできません。This is not a viable option for exporting meetings because attendee information is not provided in the MIME stream.
添付ファイルおよびその他のプロパティは、この MIME ストリームに含まれない可能性があります。Attachments and other properties might not be included in the MIME stream.
iCal 形式を、Appointment オブジェクトまたは GetItem 操作にで返される XML から構築することを検討してください。Consider constructing the iCal format from either the Appointment object or from the XML returned by the GetItem operation.
この方法を使用すると、iCal ファイルの拡張プロパティ (“X-‘ プロパティ) を含め、より多くの Exchange プロパティをキャプチャできます。This way, you can capture more of the Exchange properties with extended properties ("X-' properties) in the iCal file.
また、XML 形式の予定をエクスポートすることもできます。You can also export an appointment in XML form.
GetItem 操作を呼び出して、システムに XML を保存します。Call the GetItem operation and save the XML in your system.
また、EWS マネージ API のトレース機能を使用して、XML をキャプチャして XML データベースに格納できます。You can also use the tracing functionality in the EWS Managed API to capture the XML to put in an XML database.
詳しくは、「iCal ファイルとして予定をエクスポートする」をご覧ください。For more information, see Exporting an appointment as an iCal file.
一般的なファイルの種類の MIME ストリームとしてメール、予定表アイテムのコピーをインポートする。Import a copy of an email or calendar item as a MIME stream for a common file type.
EmailMessageMimeContent プロパティまたは Appointment オブジェクトを使用して .eml または .ics ファイルをインポートすることができます。You can import an .eml or .ics file by using the MimeContent property on an EmailMessage or Appointment object.
メールが下書きではない場合、PidTagMessageFlags (0x0E07) 拡張プロパティを設定する必要があります。You will need to set the PidTagMessageFlags (0x0E07) extended property if the email is not a draft.

この方法で、会議をインポートすることはできません。You cannot use this approach to import meetings.

EWS を使用したアイテムのエクスポートとインポート以外の方法Alternatives to exporting and importing items by using EWS

他の方法を使用して、Exporing メールボックスとの間でアイテムをインポート/エクスポートできます。インポートとエクスポートの戦略を設計するときに考慮できる事柄を次にいくつか示します。Other options are available for exporing and importing items to and from an Exchange mailbox. The following are some ideas to consider when you design your import and export strategy:

このセクションの内容In this section

関連項目See also