Freigeben über


SetupQueryInfVersionInformationW-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 SetupQueryInfVersionInformation Funktion gibt INFORMATIONEN zur INF-Dateiversion aus einer SP_INF_INFORMATION Struktur in einen Puffer zurück.

Syntax

WINSETUPAPI BOOL SetupQueryInfVersionInformationW(
  [in]      PSP_INF_INFORMATION InfInformation,
  [in]      UINT                InfIndex,
  [in]      PCWSTR              Key,
  [in, out] PWSTR               ReturnBuffer,
  [in]      DWORD               ReturnBufferSize,
  [in, out] PDWORD              RequiredSize
);

Parameter

[in] InfInformation

Zeiger auf eine SP_INF_INFORMATION Struktur, die zuvor von einem Aufruf der SetupGetInfInformation--Funktion zurückgegeben wurde.

[in] InfIndex

Index der bestandteilen INF-Datei, aus der Versionsinformationen abgerufen werden sollen. Dieser Index kann sich im Bereich [0, InfInformation.InfCount) befinden. Dies bedeutet, dass die Werte null bis einschließlich, aber nicht einschließen, InfInformation.InfCount- gültig sind.

[in] Key

Optionaler Zeiger auf eine null-terminated string mit dem Schlüsselnamen, dessen zugeordnete Zeichenfolge abgerufen werden soll. Wenn dieser Parameter NULL-ist, werden alle Ressourcenschlüssel in den angegebenen Puffer kopiert. Jede Zeichenfolge ist NULL--terminated, mit einem zusätzlichen NULL- am Ende der Liste.

[in, out] ReturnBuffer

Wenn NULL-nicht, verweist ReturnBuffer auf einen vom Aufruf bereitgestellten Zeichenpuffer, in dem diese Funktion die INF-Dateiformatvorlage zurückgibt. Sie sollten eine null--terminated-Zeichenfolge verwenden. 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 der ReturnBuffer Parameter in Zeichen verweist. Diese Zahl enthält den null Endator.

[in, out] RequiredSize

Wenn nicht NULL-, zeigern Sie auf eine Variable, die die für den Puffer erforderliche Größe empfängt, auf die der ReturnBuffer Parameter in Zeichen verweist. Diese Zahl enthält den null Endator. Wenn ReturnBuffer- angegeben ist und die tatsächliche Größe größer als der durch 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.

Wenn SetupQueryInfVersionInformation für eine ältere INF-Datei aufgerufen wird, werden Versionsinformationen aus der älteren INF-Datei wie folgt generiert:

  1. Der OptionType-Schlüssel im Abschnitt Identification der Legacydatei wird als Klassenschlüsselwert zurückgegeben.
  2. Der FileType-Schlüssel im Abschnitt Signatur der älteren INF-Datei wird zum Signaturschlüsselwert.
  3. Wenn der Wert des FileType-Schlüssels der älteren INF-Datei MICROSOFT_FILE ist, wird der Wert des Anbieterschlüssels auf "Microsoft" festgelegt.
In der folgenden Tabelle wird zusammengefasst, wie die Informationen übersetzt werden, bevor sie in die SP_INF_INFORMATION Struktur übergeben werden.
Legacydateiinformationen Windows INF-Informationen
[Identification]
OptionType = Mouse
[Version]
Class=Mouse
[Signature]
FileType = MICROSOFT_FILE
Signature=MICROSOFT_FILE
(wenn der FileType MICROSOFT_FILE ist)
Provider="Microsoft"
 

Anmerkung

Der header setupapi.h definiert SetupQueryInfVersionInformation 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

Siehe auch

Funktionen

Übersicht

SetupGetInfInformation-

SetupQueryInfFileInformation