適用於: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 方法來開啟配置檔區段。 |