Share via


MsiGetProductInfoFromScriptA-Funktion (msi.h)

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

Syntax

UINT MsiGetProductInfoFromScriptA(
  [in]      LPCSTR  szScriptFile,
  [out]     LPSTR   lpProductBuf39,
  [out]     LANGID  *plgidLanguage,
  [out]     LPDWORD pdwVersion,
  [out]     LPSTR   lpNameBuf,
  [in, out] LPDWORD pcchNameBuf,
  [out]     LPSTR   lpPackageBuf,
  [in, out] LPDWORD pcchPackageBuf
);

Parameter

[in] szScriptFile

Eine NULL-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

Zeigt 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 beendende NULL-Zeichen.

[out] plgidLanguage

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

[out] pdwVersion

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

[out] lpNameBuf

Zeigt auf einen Puffer, der den Produktnamen empfängt. Der Puffer enthält ein beendendes NULL-Zeichen.

[in, out] pcchNameBuf

Zeigt auf eine Variable, die die Größe des Puffers in Zeichen angibt, auf den der lpNameBuf-Parameter verweist. Diese Größe sollte das beendende 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 beendende 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

Zeigt auf einen Puffer, der den Paketnamen empfängt. Der Puffer enthält das beendende NULL-Zeichen.

[in, out] pcchPackageBuf

Zeigt auf eine Variable, die die Größe des Puffers in Zeichen angibt, auf den der lpPackageNameBuf-Parameter verweist. Diese Größe sollte das beendende 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 beendende 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 aufzunehmen.
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 nicht codierungsneutralem Code 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