Funzione MsiDatabaseOpenViewA (msiquery.h)

La funzione MsiDatabaseOpenView prepara una query di database e crea un oggetto vista. 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

Gestire il database in cui si desidera aprire un oggetto vista. È 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 la 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 l'operazione riesce 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.

Commenti

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 in Procedure consigliate per Windows Installer.

Se la funzione ha esito negativo, è 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 che non è indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzioni.

Requisiti

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 Windows
Intestazione msiquery.h
Libreria Msi.lib
DLL Msi.dll

Vedi anche

Funzioni generali di accesso al database