Share via


SetupGetInfInformationA-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 zum Installieren von Anwendungen verwendet werden. Verwenden Sie stattdessen den Windows Installer zum Entwickeln von Installationsprogrammen für Anwendungen. SetupAPI wird weiterhin zum Installieren von Gerätetreibern verwendet.]

Die SetUpGetInfInformation-Funktion gibt die SP_INF_INFORMATION-Struktur für die angegebene INF-Datei an einen Puffer zurück.

Syntax

WINSETUPAPI BOOL SetupGetInfInformationA(
  [in]      LPCVOID             InfSpec,
  [in]      DWORD               SearchControl,
  [in, out] PSP_INF_INFORMATION ReturnBuffer,
  [in]      DWORD               ReturnBufferSize,
  [in, out] PDWORD              RequiredSize
);

Parameter

[in] InfSpec

Handle oder ein Dateiname für eine INF-Datei, abhängig vom Wert von SearchControl.

[in] SearchControl

Dieser Parameter kann eine der folgenden Konstanten sein.

INFINFO_INF_SPEC_IS_HINF

InfSpec ist ein INF-Handle. Ein einzelnes INF-Handle kann auf mehrere INF-Dateien verweisen, wenn sie aneinander angefügt wurden. Wenn dies der Fall ist, enthält die von dieser Funktion zurückgegebene Struktur mehrere Informationssätze.

INFINFO_INF_NAME_IS_ABSOLUTE

Die für InfSpec angegebene Zeichenfolge ist ein vollständiger Pfad. Für InfSpec wird keine weitere Verarbeitung durchgeführt.

Suchen Sie die Standardspeicherorte nach der für InfSpec angegebenen INF-Datei, bei der es sich nur um einen Dateinamen handelt. Die Standardspeicherorte sind %windir%\inf, gefolgt von %windir%\system32.

Identisch mit INFINFO_DEFAULT_SEARCH, mit dem Unterschied, dass die Standardspeicherorte in umgekehrter Reihenfolge durchsucht werden.

Suchen Sie in jedem der Verzeichnisse, die im DevicePath-Werteintrag unter folgendem Eintrag aufgeführt sind, nach dem INF:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion

[in, out] ReturnBuffer

Wenn nicht NULL, zeigt auf einen Puffer, in dem diese Funktion die SP_INF_INFORMATION-Struktur zurückgibt.

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. Mit dieser Technik können Sie Fehler vermeiden, die auf eine unzureichende Puffergröße zurückzuführen sind. Weitere Informationen finden Sie in diesem Thema im Abschnitt „Hinweise“.

[in] ReturnBufferSize

Größe von ReturnBuffer in Bytes.

[in, out] RequiredSize

Wenn nicht NULL, verweist auf eine Variable, in der diese Funktion die erforderliche Größe in Bytes für den Puffer zurückgibt, auf den returnBuffer verweist.

Wenn ReturnBuffer angegeben ist und die erforderliche Größe größer als ReturnBufferSize 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 fehlerhaft ist, ist der Rückgabewert 0 (null). Um erweiterte Fehlerinformationen zu erhalten, rufen Sie GetLastError auf.

Wenn die INF-Datei nicht gefunden werden kann, gibt die Funktion FALSE zurück, und ein anschließender Aufruf von GetLastError gibt ERROR_FILE_NOT_FOUND zurück.

Hinweise

Wenn diese Funktion mit einem ReturnBuffer von NULL und einem ReturnBufferSize-Wert von 0 (Null) aufgerufen wird, fügt die Funktion die zum Halten der angegebenen Daten erforderliche Puffergröße in die Variable ein, auf die von RequiredSize verwiesen wird. Wenn die Funktion erfolgreich ist, ist der Rückgabewert ein Wert ungleich null. Andernfalls ist der Rückgabewert 0 (null), und erweiterte Fehlerinformationen können durch Aufrufen von GetLastError abgerufen werden.

Hinweis

Der Setupapi.h-Header definiert SetupGetInfInformation 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
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

SetupQueryInfFileInformation

SetupQueryInfVersionInformation