Condividi tramite


Funzione MsiDatabaseOpenViewA (msiquery.h)

La funzione msiDatabaseOpenView prepara una query di database e crea un oggetto visualizzazione. Questa funzione restituisce un handle che deve essere chiuso usando MsiCloseHandle.

Sintassi

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

Parametri

[in] hDatabase

Handle per il database in cui si desidera aprire un oggetto visualizzazione. È possibile ottenere l'handle come descritto in Ottenere un handle di database.

[in] szQuery

Specifica una stringa di query SQL per l'esecuzione di query sul database. Per una sintassi corretta, vedere sintassi SQL.

[out] phView

Puntatore a un handle per la visualizzazione restituita.

Valore restituito

La funzione MsiDatabaseOpenView restituisce uno dei valori seguenti:

ERROR_SUCCESS se ha esito positivo e l'handle di visualizzazione a cui punta il parametro phView [out] è impostato.

ERROR_INVALID_HANDLE, ERROR_INVALID_HANDLE_STATE, ERROR_BAD_QUERY_SYNTAX o ERROR_GEN_FAILURE in caso di errore e imposta il record di errore accessibile tramite MsiGetLastErrorRecord.

Osservazioni

La funzione MsiDatabaseOpenView apre un oggetto visualizzazione per un database. È necessario aprire un oggetto vista per un database prima di eseguire qualsiasi esecuzione o recupero.

Se si verifica un errore, è possibile chiamare msiGetLastErrorRecord per altre informazioni.

Si noti che è consigliabile usare variabili di tipo PMSIHANDLE perché il programma di installazione chiude gli oggetti PMSIHANDLE quando escono dall'ambito, mentre è necessario chiudere gli oggetti MSIHANDLE chiamando MsiCloseHandle. Per altre informazioni, vedere usare PMSIHANDLE anziché la sezione HANDLE nella Procedure consigliate di Windows Installer.

Se la funzione non riesce, è possibile ottenere informazioni estese sull'errore usando MsiGetLastErrorRecord.

Nota

L'intestazione msiquery.h definisce MsiDatabaseOpenView come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice non indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere convenzioni di per i prototipi di funzioni.

Fabbisogno

Requisito Valore
client minimo supportato Windows Installer 5.0 in Windows Server 2012, Windows 8, Windows Server 2008 R2 o Windows 7. Windows Installer 4.0 o Windows Installer 4.5 in Windows Server 2008 o Windows Vista. Windows Installer in Windows Server 2003 o Windows XP
piattaforma di destinazione Finestre
intestazione msiquery.h
libreria Msi.lib
dll Msi.dll

Vedere anche

funzioni generali di accesso al database