Freigeben über


SetupGetMultiSzFieldA-Funktion (setupapi.h)

[Diese Funktion steht für die Verwendung in den im Abschnitt "Anforderungen" angegebenen Betriebssystemen zur Verfügung. Sie kann in nachfolgenden Versionen geändert oder nicht verfügbar sein. SetupAPI sollte nicht mehr für die Installation von Anwendungen verwendet werden. Verwenden Sie stattdessen den Windows Installer zum Entwickeln von Anwendungsinstallationsprogrammen. SetupAPI wird weiterhin für die Installation von Gerätetreibern verwendet.]

Die SetupGetMultiSzField-funktion ruft mehrere Zeichenfolgen ab, die in einer Zeile einer INF-Datei gespeichert sind, vom angegebenen Feld bis zum Ende der Zeile.

Syntax

WINSETUPAPI BOOL SetupGetMultiSzFieldA(
  [in]      PINFCONTEXT Context,
  [in]      DWORD       FieldIndex,
  [in, out] PSTR        ReturnBuffer,
  [in]      DWORD       ReturnBufferSize,
  [in]      LPDWORD     RequiredSize
);

Parameter

[in] Context

Zeigen Sie auf den Kontext für eine Zeile in einer INF-Datei.

[in] FieldIndex

Der 1-basierte Index des Startfelds innerhalb der angegebenen Zeile, aus der die Zeichenfolgen abgerufen werden sollen. Die Zeichenfolgenliste wird von jedem Feld erstellt, das an diesem Punkt bis zum Ende der Zeile beginnt. Ein FieldIndex- null ist mit dieser Funktion ungültig.

[in, out] ReturnBuffer

Optionaler Zeiger auf einen Zeichenpuffer, der die Zeichenfolgen empfängt. Jede Zeichenfolge ist NULL--terminated, mit einem zusätzlichen NULL- am Ende der Zeichenfolgenliste. Die null-terminated string sollte die Größe des Zielpuffers nicht überschreiten. Sie können die Funktion einmal aufrufen, um die erforderliche Puffergröße abzurufen, den erforderlichen Arbeitsspeicher zuzuweisen und dann die Funktion ein zweites Mal aufzurufen, um die Daten abzurufen. Mithilfe dieser Technik können Sie Fehler aufgrund einer unzureichenden Puffergröße vermeiden. Weitere Informationen finden Sie im Abschnitt "Hinweise". Dieser Parameter kann NULL-sein.

[in] ReturnBufferSize

Die Größe des Puffers, auf den ReturnBuffer-in Zeichen verweist. Dies schließt den null Terminator ein.

[in] RequiredSize

Optionaler Zeiger auf eine Variable, die die für den Puffer erforderliche Größe empfängt, auf die durch ReturnBuffer-in Zeichen verwiesen wird. Dies schließt den null Terminator ein. Wenn die erforderliche Größe größer als der von ReturnBufferSizeangegebene Wert ist, schlägt die Funktion fehl, und ein Aufruf von GetLastError gibt ERROR_INSUFFICIENT_BUFFER zurück.

Rückgabewert

Wenn die Funktion erfolgreich ist, ist der Rückgabewert ein Wert ungleich Null.

Wenn die Funktion fehlschlägt, ist der Rückgabewert null. Rufen Sie GetLastErrorauf, um erweiterte Fehlerinformationen zu erhalten.

Bemerkungen

Wenn diese Funktion mit einer ReturnBuffer- von NULL- und einer ReturnBufferSize- null aufgerufen wird, fügt die Funktion die Puffergröße ein, die zum Halten der angegebenen Daten in die Variable erforderlich ist, auf die RequiredSizeverweist. Wenn die Funktion in diesem Fall erfolgreich ausgeführt wird, ist der Rückgabewert ein Wert ungleich Null. Andernfalls ist der Rückgabewert null und erweiterte Fehlerinformationen können durch Aufrufen von GetLastErrorabgerufen werden.

SetupGetMultiSzField- sollte nicht zum Durchlaufen von Zeichenfolgenwerten in einer INF-Zeile verwendet werden. Stattdessen sollten Sie SetupGetStringFieldverwenden. SetupGetMultiSzField- gibt einen Wert im Format REG_MULTI_SZ zurück. Dies ist ein Array von NULL--terminated strings, die durch ein zusätzliches NULL- Zeichen beendet werden. Dieses Format lässt keine Zeichenfolgen der Länge Null zu. Wenn die Liste der Zeichenfolgen eine leere Zeichenfolge enthält, wird SetupGetMultiSzField- vorzeitig zurückgegeben, wenn der erste leere Zeichenfolgenwert auftritt.

Anmerkung

Der Header setupapi.h definiert SetupGetMultiSzField 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 XP [nur Desktop-Apps]
mindestens unterstützte Server- Windows Server 2003 [Nur Desktop-Apps]
Zielplattform- Fenster
Header- setupapi.h
Library Setupapi.lib
DLL- Setupapi.dll
API-Satz ext-ms-win-setupapi-inf-l1-1-1 (eingeführt in Windows 10, Version 10.0.14393)

Siehe auch

Funktionen

Übersicht

SetupGetBinaryField-

SetupGetIntField-

SetupGetStringField-