Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
A arquitetura de moniker OLE fornece um modelo de programação conveniente para trabalhar com URLs. A arquitetura de moniker suporta análise de nome extensível e completa através da funçãoMkParseDisplayName e do IParseDisplayName e interfaces de IMoniker, bem como nomes imprimíveis através do métodoIMoniker::GetDisplayName. A interface IMoniker é a maneira como você realmente usa URLs que encontra, e a criação de componentes que se encaixam na arquitetura de apelido é a maneira de realmente estender namespaces de URL na prática.
Uma classe de moniker fornecida pelo sistema, o moniker URL, fornece uma estrutura para criar e usar determinadas URLs. Como as URLs frequentemente veem recursos em redes de alta latência, o moniker de URL oferece suporte a vinculação assíncrona e síncrona. Atualmente, o moniker de URL não oferece suporte a armazenamento assíncrono.
O diagrama a seguir mostra os componentes envolvidos no uso de monikers de URL. Todos estes componentes devem ser familiares. (Consulte Monikers assíncronos.)
Como todos os clientes de moniker, um usuário de URL Monikers normalmente cria e mantém uma referência ao moniker, bem como ao contexto de ligação a ser usado durante a vinculação (IMoniker::BindToStorage ou IMoniker::BindToObject). Para oferecer suporte à vinculação assíncrona, o cliente pode implementar um objeto bind-status-callback, que implementa o interface de IBindStatusCallback e registrá-lo com o contexto de ligação usando a funçãoRegisterBindStatusCallback. Este objeto receberá a interface dedoIBinding do transporte durante chamadas para IBindStatusCallback::OnStartBinding.
O URL Moniker identifica o protocolo que está sendo usado analisando o prefixo da URL e, em seguida, recupera a interface IBinding da camada de transporte. O cliente usa IBinding para suportar pausa, cancelamento e priorização da operação de vinculação. O objeto de retorno de chamada também recebe notificação de progresso por meio IBindStatusCallback::OnProgress , notificação de disponibilidade de dados por meio de IBindStatusCallback::OnDataAvailablee várias outras notificações da camada de transporte sobre o status da ligação. O moniker de URL ou camadas de transporte específicas também podem solicitar informações estendidas do cliente por meio IBindStatusCallback::QueryInterface, permitindo que o cliente forneça informações específicas do protocolo que afetarão a operação de ligação.
Para obter mais informações, consulte os seguintes tópicos:
- de sincronização de retorno de chamada
- Media-Type Negociação
- Funções de Moniker URL
Tópicos relacionados