Freigeben über


MsiDatabaseOpenViewA-Funktion (msiquery.h)

Die MsiDatabaseOpenView--Funktion bereitet eine Datenbankabfrage vor und erstellt ein Ansichtsobjekt. Diese Funktion gibt ein Handle zurück, das mit MsiCloseHandlegeschlossen werden soll.

Syntax

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

Parameter

[in] hDatabase

Behandeln Sie die Datenbank, in der Sie ein Ansichtsobjekt öffnen möchten. Sie können das Handle wie in Abrufen eines Datenbankhandlebeschrieben abrufen.

[in] szQuery

Gibt eine SQL-Abfragezeichenfolge für die Abfrage der Datenbank an. Richtige Syntax finden Sie unter SQL-Syntax.

[out] phView

Zeiger auf ein Handle für die zurückgegebene Ansicht.

Rückgabewert

Die MsiDatabaseOpenView--Funktion gibt einen der folgenden Werte zurück:

ERROR_SUCCESS, wenn dies erfolgreich ist, und das Ansichtshandle, auf das der phView [out]-Parameter verweist, festgelegt ist.

ERROR_INVALID_HANDLE, ERROR_INVALID_HANDLE_STATE, ERROR_BAD_QUERY_SYNTAX oder ERROR_GEN_FAILURE, wenn fehler, und legt den Fehlerdatensatz fest, auf den über MsiGetLastErrorRecord zugegriffen werden kann.

Bemerkungen

Die MsiDatabaseOpenView--Funktion öffnet ein Ansichtsobjekt für eine Datenbank. Sie müssen ein Ansichtsobjekt für eine Datenbank öffnen, bevor Sie eine Ausführung ausführen oder abrufen.

Wenn ein Fehler auftritt, können Sie MsiGetLastErrorRecord- aufrufen, um weitere Informationen zu erhalten.

Beachten Sie, dass es empfohlen wird, Variablen vom Typ PMSIHANDLE zu verwenden, da das Installationsprogramm PMSIHANDLE-Objekte schließt, während sie außerhalb des Gültigkeitsbereichs liegen, während Sie MSIHANDLE-Objekte schließen müssen, indem Sie MsiCloseHandleaufrufen. Weitere Informationen finden Sie unter Verwenden von PMSIHANDLE anstelle des Abschnitts HANDLE im bewährte Methoden für Windows Installer.

Wenn die Funktion fehlschlägt, können Sie erweiterte Fehlerinformationen mithilfe MsiGetLastErrorRecordabrufen.

Anmerkung

Der msiquery.h-Header definiert MsiDatabaseOpenView als Alias, der die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante automatisch auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Windows Installer 5.0 unter Windows Server 2012, Windows 8, Windows Server 2008 R2 oder Windows 7. Windows Installer 4.0 oder Windows Installer 4.5 unter Windows Server 2008 oder Windows Vista. Windows Installer unter Windows Server 2003 oder Windows XP
Zielplattform- Fenster
Header- msiquery.h
Library Msi.lib
DLL- Msi.dll

Siehe auch

allgemeine Datenbankzugriffsfunktionen