2010-08-10 40 views
2

過去,我使用profman2爲不想在服務器上安裝Outlook時需要訪問Exchange郵箱的服務器創建MAPI配置文件。當我能夠以需要訪問配置文件的用戶身份登錄時,這可以正常工作。當應用程序由沒有登錄權限的服務帳戶運行時,這不起作用。我如何編程爲不同用戶或運行時由服務帳戶創建配置文件?爲服務帳戶創建MAPI配置文件

順便說一句,我使用Redemption來訪問Exchange,它需要一個MAPI配置文件已經存在。贖回似乎允許創建MAPI配置文件,但似乎無法在C#中完成此項工作。任何援助表示讚賞。

回答

4

爲什麼不讓贖回爲您創建一個配置文件?

RDOSession.Logon確實需要一個現有的配置文件,但RDOSession.LogonExchangeMailbox不會 - 它會創建(並刪除)一個臨時配置文件。

如果您需要訪問除當前用戶(父進程明智)以外的用戶擁有的郵箱,則按照經驗法則將您的代碼作爲有權訪問相關郵箱的域用戶運行,請將LogonExchangeMailbox當前用戶,然後使用RDOSession.Stores.GetSharedMailbox打開其他郵箱。

+0

感謝德米特里 - 花了一段時間看文檔,我的印象是我需要創建配置文件,然後通過.Logon – 2010-08-10 20:51:10

+0

使用它。我得到以下錯誤:IMsgServiceAdmin :: ConfigureMsgService中的錯誤:MAPI_E_CALL_FAILED - I登錄時已經以委派了郵箱訪問權限的用戶身份登錄,並且與該用戶一起使用了.Logon,並且我使用此用戶作爲測試 - 建議? – 2010-08-11 02:25:45

0

將服務配置爲以具有權限的人身份運行會更容易。我們有一個虛擬的域用戶爲類似的東西設置了權限,並且它工作得非常好。

安裝說明,以其他用戶身份運行該服務可以在這裏找到:http://www.codeproject.com/KB/cs/DynWinServiceInstallUtil.aspx

+0

我會,但所有用戶ID的密碼定期更改,除了'服務'帳戶,無法登錄。 – 2010-08-10 20:53:39

+0

我明白了。如果它不適合你,那麼我希望你能找到答案。我們最終爲特殊用戶提供了完整的密碼,這是一個例外,因爲它們不會因特定目的而改變。只要我們限制訪問賬戶所需的內容,並且擁有足夠複雜的密碼,我們的PCI審計員就可以。但是,如果它不適合你,這將無濟於事。 – David 2010-08-10 21:29:34

相關問題