Compartilhar via


Função MsiDatabaseOpenViewA (msiquery.h)

A função MsiDatabaseOpenView prepara uma consulta de banco de dados e cria um objeto de exibição. Essa função retorna um identificador que deve ser fechado usando MsiCloseHandle.

Sintaxe

UINT MsiDatabaseOpenViewA(
  [in]  MSIHANDLE hDatabase,
  [in]  LPCSTR    szQuery,
  [out] MSIHANDLE *phView
);

Parâmetros

[in] hDatabase

Manipule para o banco de dados para o qual você deseja abrir um objeto de exibição. Você pode obter o identificador conforme descrito em Obtendo um identificador de banco de dados.

[in] szQuery

Especifica uma cadeia de consulta SQL para consultar o banco de dados. Para obter a sintaxe correta, consulte de sintaxe do SQL.

[out] phView

Ponteiro para um identificador para a exibição retornada.

Valor de retorno

A função MsiDatabaseOpenView retorna um dos seguintes valores:

ERROR_SUCCESS se bem-sucedido e o identificador de exibição ao qual o parâmetro phView [out] aponta é definido.

ERROR_INVALID_HANDLE, ERROR_INVALID_HANDLE_STATE, ERROR_BAD_QUERY_SYNTAX ou ERROR_GEN_FAILURE se houver falha e define o registro de erro, acessível por meio de MsiGetLastErrorRecord.

Observações

A função MsiDatabaseOpenView abre um objeto de exibição para um banco de dados. Você deve abrir um objeto de exibição para um banco de dados antes de executar qualquer execução ou busca.

Se ocorrer um erro, você poderá chamar MsiGetLastErrorRecord para obter mais informações.

Observe que é recomendável usar variáveis do tipo PMSIHANDLE porque o instalador fecha objetos PMSIHANDLE à medida que eles saem do escopo, enquanto você deve fechar objetos MSIHANDLE chamando MsiCloseHandle. Para obter mais informações, consulte Usar PMSIHANDLE em vez da seção HANDLE node Práticas Recomendadas do Instalador do Windows .

Se a função falhar, você poderá obter informações de erro estendidas usando msiGetLastErrorRecord.

Nota

O cabeçalho msiquery.h define MsiDatabaseOpenView como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante do pré-processador UNICODE. A combinação do uso do alias neutro de codificação com código que não é neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Conventions for Function Prototypes.

Requisitos

Requisito Valor
de cliente com suporte mínimo Windows Installer 5.0 no Windows Server 2012, Windows 8, Windows Server 2008 R2 ou Windows 7. Windows Installer 4.0 ou Windows Installer 4.5 no Windows Server 2008 ou Windows Vista. Windows Installer no Windows Server 2003 ou Windows XP
da Plataforma de Destino Windows
cabeçalho msiquery.h
biblioteca Msi.lib
de DLL Msi.dll

Consulte também

Funções gerais de acesso ao banco de dados