SetupDiGetActualSectionToInstallExW-Funktion (setupapi.h)
Die SetupDiGetActualSectionToInstallEx--Funktion ruft den Namen des Abschnitts INF DDInstall ab, der ein Gerät für ein angegebenes Betriebssystem und eine Prozessorarchitektur installiert.
Syntax
WINSETUPAPI BOOL SetupDiGetActualSectionToInstallExW(
[in] HINF InfHandle,
[in] PCWSTR InfSectionName,
[in, optional] PSP_ALTPLATFORM_INFO AlternatePlatformInfo,
[out, optional] PWSTR InfSectionWithExt,
[in] DWORD InfSectionWithExtSize,
[out, optional] PDWORD RequiredSize,
[out, optional] PWSTR *Extension,
PVOID Reserved
);
Parameter
[in] InfHandle
Ein Handle für die INF-Datei, die den Abschnitt DDInstall enthält.
[in] InfSectionName
Ein Zeiger auf den DDInstall Abschnittsnamen (wie in einem INF Models-Abschnittangegeben). Die maximale Länge des Abschnittsnamens in Zeichen beträgt 254.
[in, optional] AlternatePlatformInfo
Ein Zeiger, wenn nichtNULL-, auf eine SP_ALTPLATFORM_INFO Struktur. Diese Struktur wird verwendet, um eine Betriebssystem- und Prozessorarchitektur anzugeben, die sich von der auf dem lokalen Computer unterscheidet. Um den Abschnittsnamen DDInstall für den lokalen Computer zurückzugeben, legen Sie diesen Parameter auf NULL-fest. Stellen Sie andernfalls eine SP_ALTPLATFORM Struktur bereit, und legen Sie die Member wie folgt fest:
cbSize
Auf die Größe einer SP_ALTPLATFORM_INFO-Struktur in Byte festgelegt.
Bahnsteig
Auf VER_PLATFORM_WIN32_NT für Windows XP und höhere Versionen von Windows festgelegt.
MajorVersion
Wird nicht verwendet.
MinorVersion
Nicht verwendet.
ProcessorArchitecture
Legen Sie eine der folgenden Prozessorarchitekturkonstanten fest.
Prozessorarchitekturkonstante | Bedeutung |
---|---|
PROCESSOR_ARCHITECTURE_INTEL | Die alternative Plattform ist eine x86-basierte Prozessorarchitektur. |
PROCESSOR_ARCHITECTURE_IA64 | Die alternative Plattform ist eine Itanium-basierte Prozessorarchitektur. |
PROCESSOR_ARCHITECTURE_AMD64 | Die alternative Plattform ist eine x64-basierte Prozessorarchitektur. |
Reserviert
Auf Null festgelegt.
[out, optional] InfSectionWithExt
Ein Zeiger auf einen Zeichenpuffer zum Empfangen des DDInstall- Abschnittsnamens, seiner Plattformerweiterung und eines NULL-Terminators. Dies ist der verzierte Abschnittsname, der für die Installation verwendet werden soll. Wenn dieser Parameter NULL-ist, gibt die Funktion TRUE zurück und legt RequiredSize- auf die Größe in Zeichen fest, die erforderlich ist, um den DDInstall Abschnittsnamen, dessen Plattformerweiterung und ein endendes NULL-Zeichen zurückzugeben.
[in] InfSectionWithExtSize
Die Größe des Puffers, auf den der InfSectionWithExt- Parameter verweist, in Zeichen. Die maximale Länge eines NULL-beendeten INF-Abschnittsnamens in Zeichen ist MAX_INF_SECTION_NAME_LENGTH.
[out, optional] RequiredSize
Ein Zeiger auf die Variable, die die Größe in Zeichen empfängt, die erforderlich ist, um den DDInstall Abschnittsnamen, die Plattformerweiterung und ein endendes NULL-Zeichen zurückzugeben.
[out, optional] Extension
Ein Zeiger auf eine Variable, die einen Zeiger auf das Zeichen "." empfängt, das den Anfang der Erweiterung im InfSectionWithExt- Puffer markiert. Wenn der InfSectionWithExt- Puffer nicht angegeben oder zu klein ist, wird dieser Parameter nicht festgelegt. Legen Sie diesen Parameter auf NULL- fest, wenn kein Zeiger auf die Erweiterung erforderlich ist.
Reserved
Nur für die interne Verwendung reserviert. Muss auf NULL-festgelegt sein.
Rückgabewert
Wenn die Funktion erfolgreich ist, wird TRUE-zurückgegeben. Andernfalls wird FALSE-zurückgegeben. Rufen Sie GetLastErrorauf, um erweiterte Fehlerinformationen zu erhalten.
Bemerkungen
SetupDiGetActualSectionToInstallEx ist eine erweiterte Form von SetupDiGetActualSectionToInstall. Diese Funktionen unterstützen die Erweiterungen für DDInstall Abschnittsnamen, die zum Angeben betriebssystemspezifischer und architekturspezifischer Installationsaktionen für ein Gerät verwendet werden. Informationen zu diesen Erweiterungen finden Sie unter Erstellen von INF-Dateien für mehrere Plattformen und Betriebssysteme.
Wenn Sie keine alternativen Plattforminformationen mit einem Aufruf von SetupDiGetActualSectionToInstallExbereitstellen, führt die Funktion denselben Vorgang wie SetupDiGetActualSectionToInstallaus. Die letztere Funktion sucht anhand der Plattforminformationen für den lokalen Computer nach dem angegebenen Installationsabschnittsnamen.
Wenn Sie alternative Plattforminformationen mit einem Aufruf von SetupDiGetActualSectionToInstallExbereitstellen, führt die Funktion folgende Aktionen aus:
-
Wenn Sie eine Plattform von VER_PLATFORM_WIN32_NT angeben, sucht die Funktion zuerst in der angegebenen INF-Datei nach einem eingerichteten Installationsabschnittsnamen, der dem Namen, betriebssystem und prozessorarchitektur entspricht, die Sie angeben. Wenn Sie z. B. einen Installationsabschnittsnamen von InstallSecangeben, sucht die Funktion je nach der angegebenen Prozessorarchitektur nach einem der folgenden eingerichteten Namen:
- Wenn Sie die x86-basierte Prozessorarchitektur angeben, sucht die Funktion nach dem verzierten Namen InstallSec.ntx86.
- Wenn Sie die x64-basierte Prozessorarchitektur angeben, sucht die Funktion nach dem verzierten Namen InstallSec.ntamd64.
- Wenn Sie die Itanium-basierte Prozessorarchitektur angeben, sucht die Funktion nach dem verzierten Namen InstallSec.ntia64.
Wenn die Funktion eine Übereinstimmung für den Namen, das Betriebssystem und die Prozessorarchitektur findet, beendet sie die Suche und gibt den entsprechenden verzierten Namen zurück. Wenn die Funktion keine solche Übereinstimmung findet, sucht die Funktion nach einem Abschnitt, dessen Name InstallSec.ntist. Wenn die Funktion eine Übereinstimmung für InstallSec.ntfindet, wird die Suche beendet und dieser Name zurückgegeben. Wenn die Funktion für eine der oben genannten Suchvorgänge keine Übereinstimmung findet, wird InstallSeczurückgegeben, aber nicht überprüft, ob die INF-Datei einen Installationsabschnitt enthält, dessen Name InstallSecist.
Anmerkung
Der Header setupapi.h definiert SetupDiGetActualSectionToInstallEx 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- | Verfügbar in Windows XP und höheren Versionen von Windows. |
Zielplattform- | Desktop |
Header- | setupapi.h (include Setupapi.h) |
Library | Setupapi.lib |