症状
Microsoft Graph REST API を使用して、Exchange Online のユーザー メールボックスからすべての予定表を要求します。 応答は HTTP 状態コードを返しますが、応答本文の予定表リストには既定の予定表 ("Calendar" という名前) が省略されています。 メールボックスに既定以外の予定表がある場合は、その予定表のみが一覧表示されます。
原因
この問題は、メールボックス内の予定表オブジェクト キャッシュが破損しているために発生します。
解決策
注
次の手順を使用するには、クラウド ユーザーであるか、クラウド メールボックスへのフル アクセス許可を持っている必要があります。 Outlook デスクトップ クライアントがインストールされている Microsoft Windows ベースのコンピューターと、メールボックスの Outlook プロファイルで手順を実行します。
この問題を解決するには、メールボックス内の予定表オブジェクト キャッシュを削除して再作成します。 次の手順に従います。
Microsoft Outlook で、[ファイル>Office アカウント>Outlook のバージョンについて]を選択して、デスクトップ クライアントが 32 ビット版か64 ビット版かを確認します。
最新の 32 ビットまたは 64 ビット バージョンの MFCMAPI をダウンロードして展開し、Outlook のインストールのビットに合わせます。
Von Bedeutung
MFCMAPI エディターはサポートされていますが、それを使用してメールボックスの設定を編集する場合は注意してください。 MFCMAPI エディターを誤って使用すると、メールボックスが永続的に破損する可能性があります。
Outlook (開いている場合は Outlook on the web) を閉じ、MFCMapi.exe実行します。 MFCMAPI のスタートアップ画面が表示されたら、それを閉じます。
[ツール>オプション] を選択して[オプション]ウィンドウを開きます。
次のオプションの両方を選択し、[ OK] を選択します。
"OpenMsgStore を呼び出すときに MDB_ONLINE フラグを使用する"
"OpenEntry を呼び出すときに MAPI_NO_CACHE フラグを使用する"
[ セッション>ログオン ] を選択して、[ プロファイルの選択 ] ウィンドウを開きます。
メールボックスの Outlook プロファイル名を選択し、[ OK] を選択します。
[表示名] 列で該当するメールボックスをダブルクリックして開きます。
左側のウィンドウで、ルート コンテナー>Common Viewsに移動します。
[共通ビュー] を右クリックし、[関連付けられたコンテンツ テーブルを開く] を選択します。
[件名] 列に
Calendar
値を持つテーブル エントリごとに、カレンダー オブジェクト キャッシュをバックアップします。エントリを右クリックし、[ メッセージのエクスポート ] を選択して [ メッセージをファイルに保存 ] ダイアログを開きます。
[ OK] を 選択して [名前を付けて保存] ダイアログを開きます。
バックアップ フォルダーを選択し、[ 保存] を選択します。
[件名] 列に
Calendar
値を持つテーブル エントリごとに、カレンダー オブジェクト キャッシュを削除します。エントリを右クリックし、[ メッセージの削除 ] を選択して [アイテムの削除] ダイアログを開きます。
[OK] を選択.
この手順を完了したら、[件名] 列に値が
Calendar
テーブル エントリがないことを確認します。Outlook on the web を開き、該当するメールボックスにサインインして、既定の予定表を表示します。 この手順では、メールボックスに予定表オブジェクト キャッシュを再作成します。
MFCMAPI で、1 つ以上のテーブル エントリの値が [件名] 列に
Calendar
されていることを確認します。すべての MFCMAPI ウィンドウを閉じて、アプリケーションを終了します。
予定表オブジェクト キャッシュがメールボックス内で完全に更新されるまで 5 分待ってから、予定表の要求を再試行します。