Freigeben über


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 mit Null beendete Zeichenfolge, die den vollständigen Pfad zur Skriptdatei angibt. Die Skriptdatei ist das Ankündigungsskript, das durch Aufrufen MsiAdvertiseProduct oder MsiAdvertiseProductExerstellt 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 den Produktcode GUID-und das letzte Zeichen für das endende Nullzeichen.

[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 endendes 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 endende Nullzeichen enthalten. Wenn die Funktion zurückgegeben wird, enthält diese Variable die Länge der im Puffer gespeicherten Zeichenfolge. Die zurückgegebene Anzahl enthält nicht das endende Nullzeichen. 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 Nullzeichen zu zählen.

[out] lpPackageBuf

Verweist auf einen Puffer, der den Paketnamen empfängt. Der Puffer enthält das endende Nullzeichen.

[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 endende Nullzeichen enthalten. Wenn die Funktion zurückgegeben wird, enthält diese Variable die Länge der im Puffer gespeicherten Zeichenfolge. Die zurückgegebene Anzahl enthält nicht das endende Nullzeichen. 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 Nullzeichen zu zählen.

Rückgabewert

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

Bemerkungen

Anmerkung

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