次の方法で共有


Outlook アドインのアクティブ化と JavaScript API の制限

Outlook アドインのユーザーに満足のいくエクスペリエンスを提供するには、特定のアクティブ化ルールと API の使用に関するガイドラインを理解し、制限の範囲内に収まるようにアドインを実装する必要があります。 これらのガイドラインは、個々のアドインがアクティブ化ルールや Office JavaScript API の呼び出しを処理するために通常とは異なる時間を費やすExchange Serverや Outlook を必要としないようにするために存在し、Outlook やその他のアドインの全体的なユーザー エクスペリエンスに影響を与えます。これらの制限は、アドイン マニフェストでアクティブ化ルールを設計し、カスタム プロパティ、ローミング設定、受信者、Exchange Web Services (EWS) の要求と応答、非同期呼び出しを使用する場合に適用されます。

注:

また、アドインが特定のランタイム リソースの使用制限内で実行されていることを確認する必要もあります。 詳細については、「 Office アドインのランタイム」を参照してください。

アドインのアクティブ化の制限

アドインが実行する場所とアクティブ化しない場所の詳細については、「Outlook アドインの概要」の「アドインで使用できるメールボックスアイテム」セクション 参照してください。

JavaScript API の制限

各 Outlook クライアントは、次の表で説明するように、JavaScript オブジェクト モデルで特定の制限を適用します。

機能 制限 関連する API 説明
カスタム プロパティ 2,500 文字 CustomProperties オブジェクト

Item.loadCustomPropertiesAsync メソッド
予定またはメッセージのアイテムのすべてのカスタム プロパティに関する制限です。 アドインのすべてのカスタム プロパティの合計サイズがこの制限を超えると、すべての Outlook クライアントからエラーが返されます。
ローミング設定 文字数 32 KB RoamingSettings オブジェクト

Context.roamingSettings プロパティ
アドインのすべてのローミング設定に関する制限です。 設定がこの制限を超えると、すべての Outlook クライアントからエラーが返されます。
インターネット ヘッダー Exchange Onlineのメッセージあたり 256 KB

Exchange オンプレミスのorganizationの管理者によって決定されるヘッダー サイズの制限
InternetHeaders.setAsync メソッド メッセージに適用できるヘッダーの合計サイズ制限。
Exchange Web サービス Outlook on the web、Windows (バージョン 2303 (ビルド 16225.10000)以降)、Mac (バージョン 16.73 (23042601) 以降)、および新しい Outlook on Windows の 5 MB の文字数

以前のバージョンの Outlook on Windows (クラシック) と Mac の 1 MB の文字
Mailbox.makeEwsRequestAsync メソッド Mailbox.makeEwsRequestAsync呼び出しに対する要求または応答の制限。
項目の複数選択 100 件のメッセージ Mailbox.getSelectedItemsAsync メソッド Outlook アドインがアクティブ化できる選択したメッセージの最大数。
受信者 Outlook クライアントによって異なります Item.requiredAttendees プロパティ

Item.optionalAttendees プロパティ

Item.to プロパティ

Item.cc プロパティ

Recipients.addAsync メソッド

Recipients.getAsync メソッド

Recipients.setAsync メソッド
各プロパティまたはメソッドで指定された受信者の制限。 特定の Outlook クライアントの受信者の制限については、プロパティまたはメソッドの API ドキュメントを参照してください。
表示名 255 文字 EmailAddressDetails.displayName プロパティ

Recipients オブジェクト

Item.requiredAttendees プロパティ

Item.optionalAttendees プロパティ

Item.to プロパティ

Item.cc プロパティ
予定やメッセージの表示名の長さの制限。
件名を設定する 255 文字 DisplayedSubject.setAsync (プレビュー)

Mailbox.displayNewAppointmentForm メソッド

Subject.setAsync メソッド
新しい予定のフォームの件名、または予定やメッセージの件名の設定に関する制限。
場所を設定する 255 文字 Location.setAsync メソッド 予定または会議出席依頼の場所の設定に関する制限。
新しい予定のフォームの本文 文字数 32 KB Mailbox.displayNewAppointmentForm メソッド 新しい予定のフォームでの本文に関する制限。
既存のアイテムの本文を表示する 文字数 32 KB Mailbox.displayAppointmentForm メソッド

Mailbox.displayMessageForm メソッド
Outlook on the web、モバイル デバイス、および新しい Outlook on Windows の場合: 既存の予定またはメッセージ フォームの本文の制限。
本文を設定する 文字数 1 MB Body.prependAsync メソッド

Body.setAsync

Body.setSelectedDataAsync メソッド

DisplayedBody.setAsync (プレビュー)
予定またはメッセージ アイテムの本文の設定に関する制限。
署名を設定する 30,000 文字 Body.setSignatureAsync メソッド 予定またはメッセージ内の署名の長さの制限。
添付ファイルの数 Outlook on the webおよび新しい Outlook on Windows の 499 ファイル Item.addFileAttachmentAsync メソッド アイテムを送信するために添付できるファイル数の制限。 Outlook on the webと新しい Outlook on Windows では、通常、ユーザー インターフェイスと addFileAttachmentAsync メソッドを使用して最大 499 個のファイルを添付できます。 Outlook on Windows (クラシック) と Mac では、添付ファイルの数を特に制限しません。 ただし、すべての Outlook クライアントは、添付ファイルのサイズの制限を確認します (この表の「添付ファイルのサイズ」行を参照してください)。
添付ファイルのサイズ 従来の Outlook on Windows と Outlook on Mac のExchange Serverに依存

Outlook on the webおよび新しい Outlook on Windows で 25 MB
Item.addFileAttachmentAsync メソッド メール アイテムに追加されるすべての添付ファイルのサイズの制限。 従来の Outlook on Windows と Outlook on Mac では、ユーザーのメールボックスのExchange Serverに管理者が制限を構成します。 これらのクライアントでは、アイテムの添付ファイルの数も制限されます。 Outlook on the webと新しい Outlook on Windows の場合、2 つの制限 (添付ファイルの数とすべての添付ファイルのサイズ) が小さいほど、アイテムの実際の添付ファイルが制限されます。
添付ファイルの名前 255 文字 Item.addFileAttachmentAsync メソッド アイテムに追加する添付ファイルのファイル名の長さを制限します。
添付ファイルの URI 2,048 文字 Item.addFileAttachmentAsync メソッド

Item.addFileAttachmentFromBase64Async メソッド
アイテムに添付ファイルとして追加するファイル名の URI に関する制限。
添付ファイルの Base64 でエンコードされた文字列 27,892,122 文字 (約 25 MB) Item.addFileAttachmentFromBase64Async メソッド 項目に添付ファイルとして追加される Base64 でエンコードされた文字列の制限。
添付ファイルの ID 100 文字 Item.addItemAttachmentAsync メソッド

Item.removeAttachmentAsync メソッド
アイテムに追加またはアイテムから削除する添付ファイルの ID の長さに関する制限。
非同期呼び出し 3 つの呼び出し Item.addFileAttachmentAsync メソッド

Item.addItemAttachmentAsync メソッド

Item.removeAttachmentAsync メソッド

Body.getTypeAsync メソッド

Body.prependAsync メソッド

Body.setSelectedDataAsync メソッド

CustomProperties.saveAsync メソッド

Item.LoadCustomPropertiesAsync メソッド

Location.getAsync メソッド

Location.setAsync メソッド

Mailbox.getCallbackTokenAsync メソッド

Mailbox.getUserIdentityTokenAsync メソッド

Mailbox.makeEwsRequestAsync メソッド

Recipients.addAsync メソッド

Recipients.getAsync メソッド

Recipients.setAsync メソッド

RoamingSettings.saveAsync メソッド

Subject.getAsync メソッド

Subject.setAsync メソッド

Time.getAsync メソッド

Time.setAsync メソッド
Outlook on the webとモバイル デバイスの場合、および新しい Outlook on Windows の場合: ブラウザーで許可される非同期呼び出しの数は限られているので、同時非同期呼び出しの数は一度に制限されます。
送信時の追加 5,000 文字 Body.appendOnSendAsync メソッド 送信時にメッセージまたは予定本文に追加されるコンテンツの制限。
送信前に送信する 5,000 文字 Body.prependOnSendAsync メソッド 送信時にメッセージまたは予定本文の先頭に追加するコンテンツの制限。

コンテキスト Outlook アドインのアクティブ化ルールの制限

重要

エンティティベースのコンテキスト Outlook アドインは廃止されました。 別のソリューションとして、コンテキスト アドインに正規表現ルールを実装します。 これらのルールを実装する方法のガイダンスについては、「 コンテキスト Outlook アドイン」を参照してください。

コンテキスト Outlook アドインのアクティブ化ルールを設計する場合は、次のガイドラインに従ってください。

  • マニフェストのサイズを 256 KB までに制限します。 この制限を超えた場合、Exchange メールボックスの Outlook アドインをインストールすることはできません。

    注:

    アクティブ化ルールに依存する Outlook アドイン機能は、アドインが Microsoft 365 用の統合アプリ マニフェストを使用する場合はサポートされません。

  • アドインで指定できるアクティブ化ルールの数は最大 15 です。 この制限を超えた場合は、アドインをインストールできません。

  • ItemHasRegularExpressionMatch 規則で正規表現を使用する場合は、一般的に Outlook アプリケーションに適用される次の制限事項とガイドライン、およびアプリケーションによって異なる後続のセクションの表で説明されているものに注意してください。

    • アドインのアクティブ化ルールでは、最大 5 つの正規表現を指定します。 この制限を超えた場合は、アドインをインストールできません。
    • 最初の 50 個の一致のうち、 getRegExMatches メソッド呼び出しによって予想される結果が返されるように、正規表現を指定します。
    • 重要: テキストは、正規表現に一致した結果の文字列に基づいて強調表示されます。 ただし、強調表示された出現箇所は、否定的な先読み (?!text)、ルックビハインド (?<=text)、否定的なルックビハインド (?<!text)などの実際の正規表現アサーションの結果と完全には一致しない場合があります。 たとえば、"Like under, under score, and アンダースコア" で under(?!score) 正規表現を使用する場合、文字列 "under" は、最初の 2 つだけではなく、すべての出現箇所で強調表示されます。

正規表現のサポートの違い

次の表に、制限の一覧を示し、Outlook クライアント間での正規表現のサポートの違いについて説明します。 デバイスやアイテムの本文の種類によってサポートが異なることはありません。

Outlook on the web、新しい Windows クライアント、モバイル デバイス上 Outlook on Windows (クラシック) と Mac
クライアントは、JavaScript の一部である正規表現評価を使用します。 これはブラウザーによって提供され、ECMAScript 5 のスーパーセットをサポートします。 クライアントは、Visual Studio 標準テンプレート ライブラリの一部として提供される C++ 正規表現エンジンを使用します。 このエンジンは ECMAScript 5 標準に準拠しています。
各 Outlook クライアントで各正規表現を徹底的にテストする必要があります。 正規表現が異なる結果を返す場合は、正規表現を書き換えます。 正規表現エンジンが異なるため、定義済みの文字クラスに基づくカスタム文字クラスを含む正規表現は、Outlook on Windows (クラシック) と Mac の場合と、Outlook on the web、モバイル デバイス、および新しい Outlook on Windows で異なる結果を返す場合があります。

たとえば、正規表現 [\s\S]{0,100} は、空白文字または空白以外の 1 文字の 0 から 100 までの任意の数値と一致します。 この正規表現は、Outlook クライアントに応じて異なる結果を返します。

回避策として、正規表現を (\s\|\S){0,100}として書き換える必要があります。 この正規表現は、空白または空白以外の 0 から 100 までの任意の数値と一致します。

各 Outlook クライアントで各正規表現を徹底的にテストする必要があります。 正規表現が異なる結果を返す場合は、正規表現を書き換えます。
Outlook on Windows (クラシック) および Mac でサポートされているリソース監視とレジストリ設定は、Outlook on the web、モバイル デバイス、および新しい Outlook on Windows ではサポートされていません。 ただし、Outlook on Windows (クラシック) と Mac の評価時間が長すぎる正規表現を含むアドインは、すべての Outlook クライアントで同じメールボックスに対して無効になっています。 既定では、アドインのすべての正規表現の評価は 1 秒に制限されます。 この制限を超えると、最大 3 回の再評価が発生します。 再評価の制限を超えると、Outlook on Windows (クラシック) と Mac では、どの Outlook クライアントでも同じメールボックスに対してアドインが実行されなくなります。

管理者は、 OutlookActivationAlertThresholdOutlookActivationManagerRetryLimit レジストリ キーを使用して、これらの評価制限をオーバーライドできます。

評価対象アイテムの本文のサイズ制限

次の表に、制限の一覧を示し、各 Outlook クライアントが正規表現を適用するアイテム本文の部分の違いについて説明します。 これらの制限の一部は、アイテム本体に正規表現が適用されている場合、デバイスとアイテムの本文の種類によって異なります。

新しい Windows クライアントでのOutlook on the webと Outlook on Windows (クラシック) と Mac モバイル デバイス上の Outlook
フォーム ファクター Android スマートフォン、iPad、iPhone 以外のサポートされているデバイス。 サポートされているデバイス。 Android スマートフォン、iPad、または iPhone。
プレーン テキスト アイテムの本文 本文が 500,000 文字 < 場合にのみアドインをアクティブにします。 RegEx は本文のデータの最初の 1 MB に適用されますが、制限を超える残りの本文には適用されません。 本文が 16,000 文字 < 場合にのみアドインをアクティブにします。
HTML アイテムの本文 本文が 500,000 文字 < 場合にのみアドインをアクティブにします。 本文のデータの最初の 512 KB に正規表現を適用しますが、その制限を超える本文の残りの部分には適用されません。 (実際の文字数は、1 文字あたり 1 バイトから 4 バイトまでのエンコードによって異なります)。 RegEx は最初の 64,000 文字 (HTML タグ文字を含む) に適用されますが、制限を超える残りの本文には適用されません。

返される一致の制限

次の表に、制限の一覧を示し、正規表現を評価した後に各 Outlook クライアントが返す一致の違いについて説明します。 サポートは、特定の種類のデバイスに依存しませんが、アイテム本文に正規表現が適用されている場合は、アイテム本体の種類によって異なります。

Outlook on the web、新しい Windows クライアント、モバイル デバイス上 Outlook on Windows (クラシック) と Mac
一致が返される順序 getRegExMatches メソッドは、Outlook on Windows (クラシック) と Mac の同じメール アイテムと、Outlook on the web、モバイル デバイス、および新しい Outlook on Windows で適用された同じ正規表現に対して異なる一致を返すものとします。 getRegExMatches メソッドは、Outlook on Windows (クラシック) と Mac の同じメール アイテムに適用された同じ正規表現と、Outlook on the web、モバイル デバイス、および新しい Outlook on Windows で異なる一致を返すものとします。
プレーン テキスト アイテムの本文 getRegExMatches は、最大 3,072 文字 (3 KB) の一致を返し、最大 50 個の一致を返します。 getRegExMatches メソッドは、最大 1,536 文字 (1.5 KB) の一致を返し、最大 50 個の一致を返します。

: getRegExMatches は、返された配列内の特定の順序で一致を返しません。 一般に、Outlook on Windows (クラシック) と Mac の同じメール アイテムに適用される同じ正規表現の一致の順序が、Outlook on the web、モバイル デバイス、および新しい Outlook on Windows の場合とは異なると仮定します。
HTML アイテムの本文 getRegExMatches は、最大 3,072 文字 (3 KB) の一致を返し、最大 50 個の一致を返します。 getRegExMatches は、最大 3,072 文字 (3 KB) の一致を返し、最大 50 個の一致を返します。

: getRegExMatches は、返された配列内の特定の順序で一致を返しません。 一般に、Outlook on Windows (クラシック) と Mac の同じメール アイテムに適用される同じ正規表現の一致の順序が、Outlook on the web、モバイル デバイス、および新しい Outlook on Windows の場合とは異なると仮定します。

関連項目