2012-02-23 10 views
1

WindowsサービスからOutlookにタスク/予定を追加しようとしています。私はこのようなコードを使用しています:Outlookの別のインスタンスが実行されているときにタスクを追加できません

RDOSession session = new RDOSession(); 

session.Logon(); 

RDOAppointmentItem appo = (RDOAppointmentItem)session.GetDefaultFolder(rdoDefaultFolders.olFolderCalendar).Items.Add(); 

appo.Subject = lessons[i].Type; 
appo.Start = lessons[i].Start; 
appo.End = lessons[i].End; 
appo.Save(); 
session.Logoff(); 

Outlookの別のインスタンスが実行されていない場合、すべて正常に動作します。しかし、私はそのようなエラーが表示されます:

Error in IMAPISession::OpenMsgStore: MAPI_E_FAILONEPROVIDER 
ulVersion: 0 
Error: Nie mo¿na otworzyæ (Can't open file) C:\Users\d3dek\AppData\Local\Microsoft\Outlook\Outlook.pst. 
Component: Foldery osobiste (Personal folders) 
ulLowLevelError: 0 
ulContext: 268828930 

私のWindowsサービスは、ユーザー 'd3dek'で動作しています。何か案は?私はpstフォルダが複数のインスタンスで動作できることを読んでいます。

答えて

1

サービスとOutlookが異なるセキュリティコンテキストで実行されている場合、PSTプロバイダは異なるプロセス間でPSTファイルを共有できません。 使用しているOutlookのバージョンは何ですか?

+0

Outlook 2007(12.0.4518.1014)MSO(12.0.4518.1014)。そのようなセキュリティコンテキストを選択するには、私はそれを償還で行うことができますか? –

+0

昇格した権限でOutlookを実行している場合? UACはオンですか?あなたのサービスはどんなサービスアイデンティティですか? –

関連する問題