Compartilhar via


Método IPublisherFilter::Initialize (eventsys.h)

Associa um método de evento a uma coleção de objetos de assinatura.

Esse método tem suporte apenas para compatibilidade com versões anteriores. Caso contrário, você deve usar os métodos da interface IMultiInterfacePublisherFilter .

Sintaxe

HRESULT Initialize(
  [in] BSTR      methodName,
  [in] IDispatch *dispUserDefined
);

Parâmetros

[in] methodName

O nome do método de evento associado ao filtro do editor.

[in] dispUserDefined

Um ponteiro para a interface IEventSystem em um objeto do sistema de eventos ou para a interface IEventControl em um objeto de classe de evento.

Valor retornado

Esse método pode retornar os valores de retorno padrão E_INVALIDARG, E_OUTOFMEMORY, E_UNEXPECTED e E_FAIL, bem como os valores a seguir.

Código de retorno Descrição
S_OK
O filtro do editor foi inicializado com êxito.
EVENT_S_SOME_SUBSCRIBERS_FAILED
Um evento foi capaz de invocar alguns, mas não todos, dos assinantes.
EVENT_E_ALL_SUBSCRIBERS_FAILED
Um evento não pôde invocar nenhum dos assinantes.
EVENT_S_NOSUBSCRIBERS
Um evento foi publicado, mas não havia assinantes.
EVENT_E_QUERYSYNTAX
Ocorreu um erro de sintaxe ao tentar avaliar uma cadeia de caracteres de consulta.
EVENT_E_QUERYFIELD
Um nome de campo inválido foi usado em uma cadeia de caracteres de consulta.
EVENT_E_INTERNALEXCEPTION
Uma exceção inesperada foi gerada.
EVENT_E_INTERNALERROR
Um erro interno inesperado foi detectado.
EVENT_E_INVALID_PER_USER_SID
O SID proprietário em uma assinatura por usuário não existe.
EVENT_E_USER_EXCEPTION
Um componente ou assinante fornecido pelo usuário gerou uma exceção.
EVENT_E_TOO_MANY_METHODS
Uma interface tem muitos métodos para disparar eventos.
EVENT_E_MISSING_EVENTCLASS
Uma assinatura não pode ser armazenada, a menos que a classe de evento da assinatura já exista.
EVENT_E_NOT_ALL_REMOVED
Nem todos os objetos solicitados puderam ser removidos.
EVENT_E_COMPLUS_NOT_INSTALLED
O COM+ é necessário para essa operação, mas não está instalado.

Comentários

O filtro do editor usa o ponteiro passado em dispUserDefined para obter uma lista de assinantes, chamando IEventSystem::Query ou IEventControl::GetSubscriptions.

Requisitos

   
Cliente mínimo com suporte Windows 2000 Professional [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows 2000 Server [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho eventsys.h

Confira também

IMultiInterfacePublisherFilter

IPublisherFilter