Funzione MonikerCommonPrefixWith (objbase.h)
Crea un nuovo moniker basato sul prefisso comune condiviso da questo moniker (quello che comprende i dati di questo oggetto moniker) con un altro moniker.
Questa funzione deve essere chiamata solo nelle implementazioni di IMoniker::CommonPrefixWith.
Sintassi
HRESULT MonikerCommonPrefixWith(
[in] LPMONIKER pmkThis,
[in] LPMONIKER pmkOther,
[out] LPMONIKER *ppmkCommon
);
Parametri
[in] pmkThis
Puntatore all'interfaccia IMoniker su uno dei moniker per i quali viene cercato un prefisso comune; in genere il moniker in cui questa chiamata viene usata per implementare IMoniker::CommonPrefixWith.
[in] pmkOther
Puntatore all'interfaccia IMoniker sul moniker da confrontare con il primo moniker.
[out] ppmkCommon
Indirizzo di una variabile puntatore IMoniker* che riceve il puntatore dell'interfaccia al moniker in base al prefisso comune di pmkThis e pmkOther. Al termine, la funzione ha chiamato AddRef nel moniker e il chiamante è responsabile della chiamata a Release. Se si verifica un errore, il valore del puntatore dell'interfaccia fornito è NULL.
Valore restituito
Questa funzione può restituire i valori restituiti standard E_OUTOFMEMORY e E_UNEXPECTED, nonché i valori seguenti.
Codice restituito | Descrizione |
---|---|
|
Esiste un prefisso comune che non è né pmkThis né pmkOther. |
|
L'intero moniker pmkOther è un prefisso del moniker pmkThis . |
|
L'intero moniker pmkThis è un prefisso del moniker pmkOther . |
|
I moniker pmkThis e pmkOther sono uguali. |
|
I moniker non hanno un prefisso comune. |
|
Questa funzione è stata chiamata su un moniker relativo. Non è significativo prendere il prefisso comune dei moniker relativi. |
Commenti
L'implementazione di IMoniker::CommonPrefixWith deve prima verificare se l'altro moniker è di un tipo riconosciuto e gestito in modo speciale. In caso contrario, è necessario chiamare MonikerCommonPrefixWith, passando se stesso come pmkThis e l'altro moniker come pmkOther. MonikerCommonPrefixWith gestisce correttamente i casi in cui uno dei due moniker è un composito generico.
È consigliabile chiamare questa funzione solo se pmkThis e pmkOther sono entrambi moniker assoluti (dove un moniker assoluto è un moniker di file o un composito generico il cui componente più a sinistra è un moniker di file e dove il moniker del file rappresenta un percorso assoluto). Non chiamare questa funzione sui moniker relativi.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 2000 Professional [app desktop | App UWP] |
Server minimo supportato | Windows 2000 Server [app desktop | App UWP] |
Piattaforma di destinazione | Windows |
Intestazione | objbase.h |
Libreria | Ole32.lib |
DLL | Ole32.dll |