Share via


MsiGetProductInfoFromScriptW-Funktion (msi.h)

Die MsiGetProductInfoFromScript-Funktion gibt Produktinformationen für eine Windows Installer-Skriptdatei zurück.

Syntax

UINT MsiGetProductInfoFromScriptW(
  [in]      LPCWSTR szScriptFile,
  [out]     LPWSTR  lpProductBuf39,
  [out]     LANGID  *plgidLanguage,
  [out]     LPDWORD pdwVersion,
  [out]     LPWSTR  lpNameBuf,
  [in, out] LPDWORD pcchNameBuf,
  [out]     LPWSTR  lpPackageBuf,
  [in, out] LPDWORD pcchPackageBuf
);

Parameter

[in] szScriptFile

Eine NULL-beendete Zeichenfolge, die den vollständigen Pfad zur Skriptdatei angibt. Die Skriptdatei ist das Ankündigungsskript, das durch Aufrufen von MsiAdvertiseProduct oder MsiAdvertiseProductEx erstellt wurde.

[out] lpProductBuf39

Verweist auf einen Puffer, der den Produktcode empfängt. Der Puffer muss 39 Zeichen lang sein. Die ersten 38 Zeichen gelten für die Produktcode-GUID, und das letzte Zeichen ist für das abschließende NULL-Zeichen.

[out] plgidLanguage

Verweist auf eine Variable, die die Produktsprache empfängt.

[out] pdwVersion

Verweist auf einen Puffer, der die Produktversion empfängt.

[out] lpNameBuf

Verweist auf einen Puffer, der den Produktnamen empfängt. Der Puffer enthält ein abschließendes NULL-Zeichen.

[in, out] pcchNameBuf

Verweist auf eine Variable, die die Größe des Puffers in Zeichen angibt, auf den der lpNameBuf-Parameter verweist. Diese Größe sollte das abschließende NULL-Zeichen enthalten. Wenn die Funktion zurückgibt, enthält diese Variable die Länge der im Puffer gespeicherten Zeichenfolge. Die zurückgegebene Anzahl enthält nicht das abschließende NULL-Zeichen. Wenn der Puffer nicht groß genug ist, gibt die Funktion ERROR_MORE_DATA zurück, und die Variable enthält die Größe der Zeichenfolge in Zeichen, ohne das NULL-Zeichen zu zählen.

[out] lpPackageBuf

Verweist auf einen Puffer, der den Paketnamen empfängt. Der Puffer enthält das abschließende NULL-Zeichen.

[in, out] pcchPackageBuf

Verweist auf eine Variable, die die Größe des Puffers in Zeichen angibt, auf den der lpPackageNameBuf-Parameter verweist. Diese Größe sollte das abschließende NULL-Zeichen enthalten. Wenn die Funktion zurückgibt, enthält diese Variable die Länge der im Puffer gespeicherten Zeichenfolge. Die zurückgegebene Anzahl enthält nicht das abschließende NULL-Zeichen. Wenn der Puffer nicht groß genug ist, gibt die Funktion ERROR_MORE_DATA zurück, und die Variable enthält die Größe der Zeichenfolge in Zeichen, ohne das NULL-Zeichen zu zählen.

Rückgabewert

Wert Bedeutung
ERROR_SUCCESS
Die Funktion wurde erfolgreich abgeschlossen.
ERROR_INVALID_PARAMETER
Ein ungültiges Argument wurde an die Funktion übergeben.
ERROR_MORE_DATA
Ein Puffer war zu klein, um den gesamten Wert zu speichern.
ERROR_INSTALL_FAILURE
Skriptinformationen konnten nicht abgerufen werden.
ERROR_CALL_NOT_IMPLEMENTED
Diese Funktion ist nur unter Windows 2000 und Windows XP verfügbar.

Hinweise

Hinweis

Der msi.h-Header definiert MsiGetProductInfoFromScript 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
Unterstützte Mindestversion (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 erforderlichen Windows Service Pack für eine Windows Installer-Version finden Sie unter Windows Installer – Laufzeitanforderungen.
Zielplattform Windows
Kopfzeile msi.h
Bibliothek Msi.lib
DLL Msi.dll