Condividi tramite


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
S_OK
Esiste un prefisso comune che non è né pmkThispmkOther.
MK_S_HIM
L'intero moniker pmkOther è un prefisso del moniker pmkThis .
MK_S_ME
L'intero moniker pmkThis è un prefisso del moniker pmkOther .
MK_S_US
I moniker pmkThis e pmkOther sono uguali.
MK_E_NOPREFIX
I moniker non hanno un prefisso comune.
MK_E_NOTBINDABLE
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

Vedi anche

IMoniker::CommonPrefixWith