Share via


SetupGetSourceFileLocationW-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 SetupGetSourceFileLocation-Funktion ruft den Speicherort einer Quelldatei ab, die in einer INF-Datei aufgeführt ist.

Syntax

WINSETUPAPI BOOL SetupGetSourceFileLocationW(
  [in]      HINF        InfHandle,
  [in]      PINFCONTEXT InfContext,
  [in]      PCWSTR      FileName,
  [in, out] PUINT       SourceId,
  [in, out] PWSTR       ReturnBuffer,
  [out]     DWORD       ReturnBufferSize,
  [in, out] PDWORD      RequiredSize
);

Parameter

[in] InfHandle

Behandeln Sie die INF-Datei, die die Abschnitte SourceDisksNames und SourceDisksFiles enthält. Wenn plattformspezifische Abschnitte für das System des Benutzers vorhanden sind (z. B. SourceDisksNames.x86 und SourceDisksFiles.x86), wird der plattformspezifische Abschnitt verwendet.

[in] InfContext

Optionaler Zeiger auf den Kontext einer Zeile in einem Abschnitt zum Kopieren von Dateien , für den der vollständige Quellpfad abgerufen werden soll. Wenn dieser Parameter NULL ist, wird FileName im Abschnitt SourceDisksFiles der von InfHandle angegebenen INF-Datei gesucht.

[in] FileName

Optionaler Zeiger auf eine NULL-endende Zeichenfolge, die den Dateinamen (kein Pfad) enthält, für die der vollständige Quellspeicherort zurückgegeben werden soll. Dieser Parameter kann NULL sein, aber entweder FileName oder InfContext muss angegeben werden.

[in, out] SourceId

Zeiger auf eine Variable, die den Quellbezeichner des Mediums empfängt, auf dem sich die Datei befindet, aus dem Abschnitt SourceDisksNames der INF-Datei.

[in, out] ReturnBuffer

Optionaler Zeiger auf einen Puffer zum Empfangen des relativen Quellpfads. Der Quellpfad enthält weder den Dateinamen selbst noch einen Laufwerkbuchstaben/Netzwerkfreigabenamen. Der Pfad beginnt oder endet nicht mit einem umgekehrten Schrägstrich (), sodass die leere Zeichenfolge das Stammverzeichnis angibt. Sie sollten einen Zeichenfolgenpuffer mit NULL-Beendigung verwenden. Die NULL-Zeichenfolge darf 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. Mit dieser Technik können Sie Fehler vermeiden, die auf eine unzureichende Puffergröße zurückzuführen sind. Weitere Informationen finden Sie im Abschnitt mit den Hinweisen. Dieser Parameter kann NULL sein.

[out] ReturnBufferSize

Größe des Puffers, auf den von ReturnBuffer in Zeichen verwiesen wird. Diese Zahl enthält den NULL-Abschlusszeichen .

[in, out] RequiredSize

Optionaler Zeiger 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-Abschlusszeichen . Wenn die erforderliche Größe größer als der von ReturnBufferSize angegebene Wert ist, schlägt die Funktion fehl, und 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 null. Um erweiterte Fehlerinformationen zu erhalten, rufen Sie GetLastError auf.

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 dies für die Funktion erfolgreich ist, ist der Rückgabewert ein Wert ungleich Null. Andernfalls ist der Rückgabewert null, und erweiterte Fehlerinformationen können durch Aufrufen von GetLastError abgerufen werden.

Hinweis

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

SetupGetSourceFileSize

SetupGetSourceInfo