Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Cria um moniker de item que identifica um objeto dentro de um objeto que contém (normalmente um documento composto).
Sintaxe
HRESULT CreateItemMoniker(
[in] LPCOLESTR lpszDelim,
[in] LPCOLESTR lpszItem,
[out] LPMONIKER *ppmk
);
Parâmetros
[in] lpszDelim
Um ponteiro para uma cadeia de caracteres largos (dois bytes por caractere) cadeia de caracteres terminada em zero que contém o delimitador (normalmente "!") usado para separar o nome de exibição deste item do nome de exibição do objeto que o contém.
[in] lpszItem
Um ponteiro para uma cadeia de caracteres terminada em zero que indica o nome do objeto que contém para o objeto que está sendo identificado. Posteriormente, esse nome pode ser usado para recuperar um ponteiro para o objeto em uma chamada para IOleItemContainer::GetObject.
[out] ppmk
O endereço de uma variável de ponteiro IMoniker* que recebe o ponteiro de interface para o moniker de item. Quando bem-sucedida, a função chamou AddRef no moniker de item e o chamador é responsável por chamar Release. Se ocorrer um erro, o ponteiro de interface fornecido terá um valor NULL .
Retornar valor
Essa função pode retornar os valores retornados padrão E_OUTOFMEMORY e S_OK.
Comentários
Um provedor de moniker, que distribui monikers para identificar seus objetos para que eles sejam acessíveis a outras partes, chamaria CreateItemMoniker para identificar seus objetos com monikers de item. Os monikers de item são baseados em uma cadeia de caracteres e identificam objetos contidos em outro objeto e podem ser identificados individualmente usando uma cadeia de caracteres. O objeto que contém também deve implementar a interface IOleContainer .
A maioria dos provedores de moniker são aplicativos OLE que dão suporte à vinculação. Aplicativos que dão suporte à vinculação a objetos menores que documentos baseados em arquivo, como um aplicativo de servidor que permite vincular a uma seleção dentro de um documento, devem usar monikers de item para identificar os objetos. Aplicativos de contêiner que permitem a vinculação a objetos inseridos usam monikers de item para identificar os objetos inseridos.
O parâmetro lpszItem é o nome usado pelo documento para identificar exclusivamente o objeto. Por exemplo, se o objeto que está sendo identificado for um intervalo de células em uma planilha, um nome apropriado poderá ser algo como "A1:E7". Um nome apropriado quando o objeto que está sendo identificado é um objeto inserido pode ser algo como "embedobj1". O objeto que contém deve fornecer uma implementação da interface IOleItemContainer que possa interpretar esse nome e localizar o objeto correspondente. Isso permite que o moniker de item seja associado ao objeto que ele identifica.
Os monikers de item não são usados isoladamente. Eles devem ser compostos com um moniker que identifique o objeto que o contém também. Por exemplo, se o objeto que está sendo identificado for um intervalo de células contido em um documento baseado em arquivo, o moniker de item que identifica esse objeto deverá ser composto com o moniker de arquivo que identifica esse documento, resultando em um moniker composto equivalente a "C:\work\sales.xls! A1:E7."
Contêineres aninhados também são permitidos, como no caso em que um objeto está contido em um objeto inserido dentro de outro documento. O moniker completo de tal objeto seria o equivalente a "C:\work\report.doc!embedobj1! A1:E7." Nesse caso, cada objeto que contém deve chamar CreateItemMoniker e fornecer sua própria implementação da interface IOleItemContainer .
Requisitos
| Requisito | Valor |
|---|---|
| Cliente mínimo com suporte | Windows 2000 Professional [aplicativos da área de trabalho | Aplicativos UWP] |
| Servidor mínimo com suporte | Windows 2000 Server [aplicativos da área de trabalho | Aplicativos UWP] |
| Plataforma de Destino | Windows |
| Cabeçalho | objbase.h |
| Biblioteca | Ole32.lib |
| DLL | Ole32.dll |
| Conjunto de APIs | ext-ms-win-com-ole32-l1-1-0 (introduzido no Windows 8) |