Freigeben über


SetupOpenInfFileA-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 SetupOpenInfFile--Funktion öffnet eine INF-Datei und gibt ein Handle zurück.

Syntax

WINSETUPAPI HINF SetupOpenInfFileA(
  [in] PCSTR FileName,
  [in] PCSTR InfClass,
  [in] DWORD InfStyle,
  [in] PUINT ErrorLine
);

Parameter

[in] FileName

Zeigen Sie auf eine mit Null beendete Zeichenfolge, die den Namen (und optionalen Pfad) der zu öffnenden INF-Datei enthält. Wenn der Dateiname keine Pfadtrennzeichen enthält, wird er zuerst im Verzeichnis %windir%\inf und dann im Verzeichnis %windir%\system32 gesucht. Wenn der Dateiname Pfadtrennzeichen enthält, wird davon ausgegangen, dass es sich um eine vollständige Pfadspezifikation handelt und keine weitere Verarbeitung ausgeführt wird.

[in] InfClass

Optionaler Zeiger auf eine mit Null beendete Zeichenfolge, die die Klasse der gewünschten INF-Datei enthält. Diese Zeichenfolge muss mit dem Klassenwert des Abschnitts Version übereinstimmen (z. B. Class=Net). Wenn kein Eintrag im Klassenwert vorhanden ist, aber im Abschnitt Version ein Eintrag für ClassGUID vorhanden ist, wird der entsprechende Klassenname für diese GUID abgerufen und für den Vergleich verwendet.

[in] InfStyle

Formatvorlage der INF-Datei zum Öffnen oder Suchen nach. Dieser Parameter kann eine Kombination aus den folgenden Flags sein.

INF_STYLE_OLDNT

Ein älteres INF-Dateiformat.

INF_STYLE_WIN4

Ein Windows INF-Dateiformat.

[in] ErrorLine

Optionaler Zeiger auf eine Variable, auf die diese Funktion die (1-basierte) Zeilennummer zurückgibt, bei der beim Laden der INF-Datei ein Fehler aufgetreten ist. Dieser Wert ist in der Regel nur zuverlässig, wenn GetLastError- nicht ERROR_NOT_ENOUGH_MEMORY zurückgibt. Wenn eine Nichtspeicherbedingung auftritt, kann ErrorLine- 0 sein.

Rückgabewert

Die Funktion gibt ein Handle für die geöffnete INF-Datei zurück, wenn sie erfolgreich ist. Andernfalls wird der Rückgabewert INVALID_HANDLE_VALUE. Erweiterte Fehlerinformationen können durch einen Aufruf von GetLastErrorabgerufen werden.

Bemerkungen

Wenn das Laden fehlschlägt, da der INF-Dateityp nicht mit InfClassübereinstimmt, gibt die Funktion INVALID_HANDLE_VALUE zurück, und ein Aufruf von GetLastError gibt ERROR_CLASS_MISMATCH zurück.

Wenn mehrere INF-Dateiformate angegeben werden, kann die Formatvorlage der geöffneten INF-Datei durch Aufrufen der SetupGetInfInformation-Funktion bestimmt werden.

Da es möglicherweise mehrere Klassen-GUID mit demselben Klassennamen gibt, sollten Aufrufer, die an INF-Dateien einer bestimmten Klasse interessiert sind (d. h. eine bestimmte Klassen-GUID), den ClassGUID-Wert aus der INF-Datei abrufen, indem sie SetupQueryInfVersionInformationaufrufen.

Bei älteren INF-Dateien muss die InfClass--Zeichenfolge mit dem typ übereinstimmen, der im OptionType-Wert des Abschnitts Identification in der INF-Datei angegeben ist (z. B. OptionType=NetAdapter).

Anmerkung

Der Header setupapi.h definiert SetupOpenInfFile 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-0 (eingeführt in Windows 8)

Siehe auch

Funktionen

Übersicht

SetupCloseInfFile-

SetupGetInfInformation-

SetupOpenAppendInfFile-