Compartilhar via


ITypeInfo::Invoke

Windows Mobile SupportedWindows Embedded CE Supported

9/8/2008

Este método chama um método ou acessa uma propriedade de um objeto que implementa a interface indicada por descrição de tipo.

Syntax

HRESULT Invoke( 
  VOID FAR* pvInstance, 
  MEMBERID memid, 
  unsigned short wFlags, 
  DISPPARAMS FAR* pDispParams, 
  VARIANT FAR* pVarResult, 
  EXCEPINFO FAR* pExcepInfo, 
  unsigned int FAR* puArgErr 
);

Parameters

  • pvInstance
    [no] Ponteiro para uma instância da interface descrito por esta descrição tipo.
  • memid
    [no] Identificador do membro de interface.
  • wFlags
    [no] Os sinalizadores que descrevem o contexto do chamar Invoke. Ele é um do seguinte valores.

    Valor Descrição

    DISPATCH_METHOD

    O membro é acessado como um método. Se não houver ambigüidade, tanto isso e o sinalizador DISPATCH_PROPERTYGET pode ser definidas.

    DISPATCH_PROPERTYGET

    O membro é recuperado como um membro propriedade ou dados.

    DISPATCH_PROPERTYPUT

    O membro é alterado como um membro propriedade ou dados.

    DISPATCH_PROPERTYPUTREF

    O membro é alterado usando uma atribuída de referência, em vez atribuída uma valor. Esse valor é válido somente quando a propriedade aceita uma referência a um objeto.

  • pDispParams
    [in, Out] Ponteiro para uma estrutura que contém uma matriz de parâmetros, uma matriz de DISPIDs para nomeado parâmetros e contagens do número de elementos em cada matriz.
  • pVarResult
    [out] Deve ser NULL se o chamador não espera qualquer resultado. Caso contrário, ele deve ser um ponteiro para a localidade em que o resultado deve ser armazenado. Se wFlags Especifica DISPATCH_PROPERTYPUT ou DISPATCH_PROPERTYPUTREF, pVarResult é ignorado.
  • pExcepInfo
    [out] Ponteiro para uma estrutura informações exceção, que é preenchida somente se DISP_E_EXCEPTION é retornado. Se pExcepInfo é NULL na entrada, será retornado apenas um erro HRESULT.
  • puArgErr
    [out] Se ITypeInfo::Invoke Retorna DISP_E_TYPEMISMATCH, puArgErr Indica o índice (dentro rgvarg) do parâmetro com tipo incorreto.

    Se mais de um parâmetro retornará um erro, puArgErr Indica somente o primeiro parâmetro com um erro.

    Argumentos em pDispParams->rgvarg aparecem na ordem inversa, portanto, o primeiro parâmetro é aquele tendo o índice mais alto na matriz. Não pode ser NULL.

Return Value

A seguinte tabela mostra os valores de retorno para esta função.

Valor Descrição

S_OK

O sucesso.

E_INVALIDARG

Um ou mais dos parâmetros é inválido.

DISP_E_EXCEPTION

O membro que está sendo chamado retornou um erro HRESULT.

Se o membro implementa IErrorInfo, os detalhes estão disponível no objeto de erro. Caso contrário, o pExcepInfo parâmetro contém detalhes.

TYPE_E_IOERROR

A função não pôde ler a partir de arquivo.

TYPE_E_INVDATAREAD

Dados inválidos.

TYPE_E_UNSUPFORMAT

A biblioteca tipo tem um formato mais antigo.

TYPE_E_REGISTRYACCESS

Houve um erro acessando o sistema registro banco de dados.

TYPE_E_LIBNOTREGISTERED

A biblioteca tipo não foi encontrada no registro banco de dados sistema.

TYPE_E_INVALIDSTATE

Não foi possível abrir a biblioteca tipo.

TYPE_E_WRONGTYPEKIND

Tipo incompatível.

TYPE_E_ELEMENTNOTFOUND

O elemento não foi encontrado.

TYPE_E_BADMODULEKIND

O módulo não tem suporte Chamar.

Outros códigos de retorno

Qualquer um do IDispatch::Invoke Os erros também podem ser retornados.

Remarks

Use a função ITypeInfo::Invoke Para acessar um membro de um objeto ou invocar um método que implementa a interface descrito por esta descrição tipo. Para objetos que suporte o IDispatch interface, você pode usar ITypeInfo::Invoke Para implementar IDispatch::Invoke.

ITypeInfo::Invoke Leva um ponteiro para uma instância da classe. Caso contrário, seus parâmetros são os mesmos IDispatch::Invoke, exceto pelo fato de que ITypeInfo::Invoke Omite o refiid e LCID Parâmetros. Quando chamado, ITypeInfo::Invoke executa as ações descritas pela IDispatch::Invoke Parâmetros na instância especificada.

Para membros interface VTBL, ITypeInfo::Invoke Passa a LCID de informações de tipo em parâmetros marcados com o LCID atributo e o valor retornado para o retval atributo.

Se a descrição tipo herda descrição outro tipo, essa função recurses na descrição de tipo base para localizar o item com o identificador membro solicitado.

Requirements

Header oaidl.h, oaidl.idl
Library oleaut32.lib, uuid.lib
Windows Embedded CE Windows CE 2.0 and later
Windows Mobile Windows Mobile Version 5.0 and later

See Also

Reference

ITypeInfo
IDispatch
IDispatch::Invoke
IErrorInfo