IMsgServiceAdmin::OpenProfileSection

適用於:Outlook 2013 |Outlook 2016

開啟目前配置檔的區段,並傳回 IProfSect 指標以供進一步存取。

HRESULT OpenProfileSection(
  LPMAPIUID lpUID,
  LPCIID lpInterface,
  ULONG ulFlags,
  LPPROFSECT FAR * lppProfSect
);

參數

lpUID

MAPIUID 結構的指標,可識別配置檔區段。

lpInterface

[in]介面識別碼 (IID) 的指標,表示要用來存取配置檔區段的介面。 傳遞 NULL 會導致在 lppProfSect 參數中傳回其標準介面的指標。 配置檔區段的標準介面是 IProfSect

ulFlags

[in]控制配置檔區段存取權的旗標位掩碼。 您可以設定下列旗標:

MAPI_DEFERRED_ERRORS

允許 OpenProfileSection 成功傳回,可能是在配置檔區段完全可供呼叫的用戶端使用之前。 如果配置檔區段無法使用,進行後續呼叫可能會引發錯誤。

MAPI_MODIFY

要求讀取/寫入許可權。 根據預設,配置檔區段會以唯讀許可權開啟,而用戶端不應在已授與讀取/寫入許可權的假設下運作。

MAPI_FORCE_ACCESS

允許存取所有配置檔區段,即使是個別服務提供者所擁有的區段。

lppProfSect

[out]配置檔區段指標的指標。

傳回值

S_OK

配置檔區段已成功開啟。

MAPI_E_NO_ACCESS

嘗試存取呼叫端許可權不足的配置檔區段。

MAPI_E_NOT_FOUND

要求的配置檔區段不存在。

註解

IMsgServiceAdmin::OpenProfileSection 方法會開啟配置檔區段,這是支援 IProfSect 介面的物件。 配置檔區段可用來讀取資訊,並將資訊寫入工作階段配置檔。

除非使用 MAPI_FORCE_ACCESS,否則 OpenProfileSection 無法用來開啟個別服務提供者所擁有的配置檔區段。

呼叫者注意事項

多個用戶端可以使用唯讀許可權開啟配置檔區段,但只有一個用戶端可以開啟具有讀取/寫入許可權的配置檔區段。 如果另一個用戶端已開啟您嘗試開啟的配置檔區段,方法是呼叫已設定MAPI_MODIFY旗標的 OpenProfileSection ,則呼叫將會失敗,並傳回MAPI_E_NO_ACCESS。

如果區段已開啟以供寫入,只讀開啟作業就會失敗。

您可以使用 MAPI_MODIFY 旗標呼叫 OpenProfileSection,並在 lpUID 參數中呼叫不存在的 MAPIUID 結構來建立配置檔區段。 請務必指定MAPI_MODIFY。 如果您將 lpUID 設定為指向不存在的 MAPIUID ,且 OpenProfileSection 設定為使用唯讀的預設存取模式,則呼叫將會失敗並MAPI_E_NOT_FOUND。

MFCMAPI 參考

如需 MFCMAPI 範例程式代碼,請參閱下表。

檔案 Function Comment
MAPIProfileFunctions.cpp
OpenProfileSection
MFCMAPI 使用 IMsgServiceAdmin::OpenProfileSection 方法來開啟配置檔區段。

另請參閱

IMAPIProp:IUnknown

IMAPISession::OpenProfileSection

IProfSect:IMAPIProp

MAPIUID

IMsgServiceAdmin:IUnknown

MFCMAPI 作為程式碼範例