MsiOpenPackageExA-Funktion (msi.h)
Die MsiOpenPackageEx--Funktion öffnet ein Paket zur Verwendung mit Funktionen, die auf die Produktdatenbank zugreifen. Die MsiCloseHandle--Funktion muss mit dem Handle aufgerufen werden, wenn der Handle nicht mehr benötigt wird.
Syntax
UINT MsiOpenPackageExA(
[in] LPCSTR szPackagePath,
[in] DWORD dwOptions,
[out] MSIHANDLE *hProduct
);
Parameter
[in] szPackagePath
Der Pfad zum Paket.
[in] dwOptions
Die Bitkennzeichnungen, die angeben, ob der Computerzustand ignoriert werden soll. Übergeben Sie 0 (Null), um MsiOpenPackage Verhalten zu verwenden.
Konstante | Bedeutung |
---|---|
|
Ignorieren Sie den Computerstatus beim Erstellen des Produkthandles. |
[out] hProduct
Ein Zeiger auf eine Variable, die den Produkthandle empfängt.
Rückgabewert
Wert | Bedeutung |
---|---|
|
Die Konfigurationsinformationen sind beschädigt. |
|
Das Produkt konnte nicht geöffnet werden. |
|
Windows Installer lässt die Installation von einer Remotedesktopverbindung nicht zu. |
|
An die Funktion wird ein ungültiger Parameter übergeben. |
|
Die Funktion wird erfolgreich abgeschlossen. |
Wenn diese Funktion fehlschlägt, wird möglicherweise ein Systemfehlercode zurückgegeben. Weitere Informationen finden Sie unter Systemfehlercodes.
Bemerkungen
Verwenden Sie MsiOpenPackageEx- mit MSIOPENPACKAGEFLAGS_IGNOREMACHINESTATE in dwOptionsfestgelegt, um einen eingeschränkten Produkthandle zu erstellen, der unabhängig vom aktuellen Computerstatus ist und nicht in der Lage ist, den aktuellen Computerzustand zu ändern.
Wenn dwOptions- MSIOPENPACKAGEFLAGS_IGNOREMACHINESTATE oder 1 ist, ignoriert MsiOpenPackageEx den aktuellen Computerstatus beim Erstellen des Produkthandles ignoriert. Wenn der Wert von dwOptions 0 ist, ist MsiOpenPackageEx- identisch mit MsiOpenPackage und erstellt ein Produkthandle, das davon abhängt, ob das durch szPackagePath- angegebene Paket bereits auf dem Computer installiert ist.
Das eingeschränkte Handle, das mithilfe von MsiOpenPackageEx- mit MSIOPENPACKAGEFLAGS_IGNOREMACHINESTATE nur die Ausführung von Dialogfeldern, einer Teilmenge der Standardaktionen und benutzerdefinierten Aktionen ermöglicht, die Eigenschaften festlegen ( benutzerdefinierter Aktionstyp 35, benutzerdefinierter Aktionstyp 51und benutzerdefinierten Aktionstyp 19). Das eingeschränkte Handle verhindert die Verwendung von benutzerdefinierten Aktionen, die Dynamic-Link Bibliotheken, ausführbare Dateien oder Skriptsausgeführt werden.
Sie können MsiDoAction- für die folgenden Standardaktionen mithilfe des eingeschränkten Handles aufrufen. Alle anderen Aktionen geben ERROR_FUNCTION_NOT_CALLED zurück, wenn sie mit dem eingeschränkten Handle aufgerufen werden.
- ADMIN-
- INSTALL
- SEQUENCE-
- AppSearch-Aktion
- CCPSearch-
- CostFinalize-
- CostInitialize
- FileCost-
- FindRelatedProducts-
- IsolateComponents-Aktion
- LaunchConditions-
- MigrateFeatureStates-
- ResolveSource-
- RMCCPSearch-
- ValidateProductID-
Anmerkung
Der msi.h-Header definiert MsiOpenPackageEx 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. Informationen zum mindestens von einer Windows Installer-Version erforderlichen Windows-Service Pack finden Sie unter den Windows Installer-Run-Time Anforderungen. |
Zielplattform- | Fenster |
Header- | msi.h |
Library | Msi.lib |
DLL- | Msi.dll |