mapiNameSpace.GetItemFromID(entryId、storeID)を使用してアイテムを取得しようとしています。 部分的にキャッシュされた交換モード(1か月間のみキャッシュ)を使用しています。 このメソッドは、キャッシュされた項目に対して正常に機能します。しかし、私は月よりも古いアイテムのためにそれをしようとすると、以下の例外が Outlook:店舗IDが部分キャッシュモードで指定されているとGetItemFromIDが機能しない
System.Runtime.InteropServices.COMException (0x8004010F): The message you specified cannot be found.
at Microsoft.Office.Interop.Outlook.NameSpaceClass.GetItemFromID(String EntryIDItem, Object EntryIDStore)
をスローされます。しかし、私は唯一のEntryIDでそれを試してみている場合、それが働いています。しかし、これはすべての店舗を検索するので時間がかかります。
部分キャッシュモードでstoreIDパラメータを使用しているときにエラーが発生した原因は何ですか?
P.S.この問題は、Outlookアカウント設定の部分キャッシュExchangeモードでのみ発生します。完全にオン/オフしないとき
ありがとうございます。について – shrikanthbat
ありがとうございます。ストアが既に現在のセッションで開かれている場合は、ストアエントリIDの有無に関係なくパフォーマンスの問題は発生しないはずです。 私のポイントは、同じフォルダ内の2つのアイテム、ローカルキャッシュ内に1つ、オンラインでもう1つでした。 StoreIdentifierがOutlookSpyとコードの両方で同じであることがわかります。しかし、entryIdとstoreIDでGetItemFromIDを呼び出すと、オンラインのアイテムがその例外をスローしています。 しかし、ちょうどentryIdだけを使用して正常に動作しています。 オンライン版のアイテムは、キャッシュされたアイテムとは異なるstoreEntryIdを持っていますか? – shrikanthbat
アイテムがオンラインストアにのみ存在する場合、OutlookはローカルOSTファイルとは対照的に、サーバーに接続して開く必要があるため、時間がかかりますか? –