Freigeben über


SetupQueryInfVersionInformationA-Funktion (setupapi.h)

[Diese Funktion ist für die Verwendung in den Betriebssystemen verfügbar, die im Abschnitt "Anforderungen" angegeben sind. Es kann in nachfolgenden Versionen geändert oder entfernt werden. 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 zum Installieren von Gerätetreibern verwendet.]

Die SetupQueryInfVersionInformation-Funktion gibt INF-Dateiversionsinformationen aus einer SP_INF_INFORMATION-Struktur in einen Puffer zurück.

Syntax

WINSETUPAPI BOOL SetupQueryInfVersionInformationA(
  [in]      PSP_INF_INFORMATION InfInformation,
  [in]      UINT                InfIndex,
  [in]      PCSTR               Key,
  [in, out] PSTR                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 konstituierenden INF-Datei, aus der Versionsinformationen abgerufen werden sollen. Dieser Index kann im Bereich [0, InfInformation.InfCount) liegen. Das bedeutet, dass infInformation.InfCount die Werte null bis, aber nicht enthalten, gültig sind.

[in] Key

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

[in, out] ReturnBuffer

Wenn nicht NULL, verweist ReturnBuffer auf einen vom Aufruf bereitgestellten Zeichenpuffer, in dem diese Funktion die INF-Dateiart zurückgibt. Sie sollten eine NULL-Zeichenfolge verwenden. Die NULL-Zeichenfolge 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 die Funktion dann ein zweites Mal aufzurufen, um die Daten abzurufen. Mit diesem Verfahren können Sie Fehler aufgrund einer unzureichenden Puffergröße vermeiden. Weitere Informationen finden Sie im Abschnitt mit den Hinweisen. Dieser Parameter kann NULL sein.

[in] ReturnBufferSize

Größe des Puffers, auf den der ReturnBuffer-Parameter verweist, in Zeichen. Diese Zahl enthält den NULL-Abschlussator .

[in, out] RequiredSize

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

Wenn die Funktion fehlerhaft ist, ist der Rückgabewert null. Um erweiterte Fehlerinformationen zu erhalten, rufen Sie GetLastError auf.

Hinweise

Wenn diese Funktion mit einem ReturnBuffer von NULL und einer ReturnBufferSize von null aufgerufen wird, legt die Funktion die Puffergröße, die zum Halten der angegebenen Daten erforderlich ist, in die Variable ein, auf die von RequiredSize verwiesen wird. Wenn die Funktion in dieser Funktion erfolgreich ist, ist der Rückgabewert ein Nonzero-Wert. Andernfalls ist der Rückgabewert null, und erweiterte Fehlerinformationen können durch Aufrufen von GetLastError abgerufen werden.

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

  1. Der OptionType-Schlüssel im Abschnitt Identifikation der Legacydatei wird als Klassenschlüsselwert zurückgegeben.
  2. Der FileType-Schlüssel im Abschnitt Signatur der Legacy-INF-Datei wird zum Signaturschlüsselwert.
  3. Wenn der Wert des FileType-Schlüssels der Legacy-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 an 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 fileType MICROSOFT_FILE ist)
Provider="Microsoft"
 

Hinweis

Der setupapi.h-Header 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 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

   
Unterstützte Mindestversion (Client) Windows XP [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2003 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile setupapi.h
Bibliothek Setupapi.lib
DLL Setupapi.dll

Siehe auch

Funktionen

Übersicht

SetupGetInfInformation

SetupQueryInfFileInformation