MonikerCommonPrefixWith 函式 (objbase.h)
根據這個Moniker所 (組成此Moniker對象的數據) 與其他Moniker共用的通用前置詞,建立新的Moniker。
此函式僅供 在IMoniker::CommonPrefixWith 實作中呼叫。
語法
HRESULT MonikerCommonPrefixWith(
[in] LPMONIKER pmkThis,
[in] LPMONIKER pmkOther,
[out] LPMONIKER *ppmkCommon
);
參數
[in] pmkThis
其中一個常見前置詞的 Moniker上IMoniker 介面的指標;通常使用此呼叫來實作 IMoniker::CommonPrefixWith 的 Moniker。
[in] pmkOther
要與第一個Moniker比較之 Moniker上IMoniker 介面的指標。
[out] ppmkCommon
根據 pmkThis 和 pmkOther 的通用前置詞,接收 Moniker 介面指標的 IMoniker* 指標變數位址。 成功時,函式已在Moniker上呼叫 AddRef ,而呼叫端負責呼叫 Release。 如果發生錯誤,則提供的介面指標值為 NULL。
傳回值
此函式可以傳回標準傳回值E_OUTOFMEMORY和E_UNEXPECTED,以及下列值。
傳回碼 | 描述 |
---|---|
|
常見的前置詞不存在於 pmkThis 和 pmkOther。 |
|
整個 pmkOther moniker 是 pmkThis moniker 的前置詞。 |
|
整個 pmkThis moniker 是 pmkOther moniker 的前置詞。 |
|
pmkThis 和 pmkOther monikers 相等。 |
|
Moniker 沒有通用前置詞。 |
|
這個函式是在相對Moniker上呼叫。 採用相對Moniker的通用前置詞並不有意義。 |
備註
IMoniker::CommonPrefixWith 的實作應該先檢查另一個 Moniker 是否屬於您以特殊方式辨識和處理的類型。 如果沒有,您應該呼叫 MonikerCommonPrefixWith,並將本身傳遞為 pmkThis ,並將另一個Moniker當做 pmkOther 傳遞。 MonikerCommonPrefixWith 可正確處理Moniker 是泛型複合的案例。
只有當 pmkThis 和 pmkOther 都是絕對 Moniker (其中絕對 Moniker 是檔案 Moniker 或最左邊元件為檔案 Moniker 的泛型複合,以及檔案 Moniker 代表絕對路徑) 時,才應該呼叫此函式。 請勿在相對Moniker上呼叫此函式。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 2000 專業版 [傳統型應用程式 |UWP 應用程式] |
最低支援的伺服器 | Windows 2000 Server [傳統型應用程式 |UWP 應用程式] |
目標平台 | Windows |
標頭 | objbase.h |
程式庫 | Ole32.lib |
Dll | Ole32.dll |