0

私は自分のパスカルコードで定義された定数を持っています...

const PropNameForUOID = 'http://schemas.microsoft.com/mapi/string/{00020329-0000-0000-C000-000000000046}/ORIONUOID

このプロパティを呼び出して設定します...

OleVariant(MI).PropertyAccessor.SetProperty(PropNameForUOID, Guid);

Add-in Express で生成された Outlook Addin でこれを行っています。MI は Outlook200.pas の MailItem です。これは、プロパティを設定するためにすべて正常に機能します。エラーはありません。

後でコードで読む方法は次のとおりです...

result := OleVariant(MI).PropertyAccessor.GetProperty(PropNameForUOID);

これを Outlook 2013 クライアントで実行すると、MS Exchange Build 14.3.294.4000 にヒットし、すべてがうまく機能します。

ただし、これをクライアント システムに配置すると、プロパティを読み取ろうとするとエラーが発生します。設定は正常に機能しますが、読み取りエラーが発生します。

クライアント マシンでは、IT 技術者が Outlook 2013 を構成して、彼がアクセスできる別の Exchange サーバーにアクセスしました。その後、うまくいきました。これは、クライアントの Exchange サーバーに関係があると考えられます。

これはそうでしょうか?

もしそうなら、どの設定を探すべきですか?

私の Delphi コードで間違っていることはありますか?

4

1 に答える 1

1

プロパティが存在すると仮定して、GetProperty によって返された例外を処理しないでください。OutlookSpy ([IMessage] ボタンをクリック) の使用で問題が発生している項目を調べて、プロパティがそこにあることを確認してください。

于 2016-10-28T04:24:32.743 に答える