Share via


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

Syntax

WINSETUPAPI BOOL SetupGetSourceFileLocationA(
  [in]      HINF        InfHandle,
  [in]      PINFCONTEXT InfContext,
  [in]      PCSTR       FileName,
  [in, out] PUINT       SourceId,
  [in, out] PSTR        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-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, um den relativen Quellpfad zu empfangen. 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 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.

[out] ReturnBufferSize

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

[in, out] RequiredSize

Optionaler Zeiger auf eine Variable, die die erforderliche Größe für den Puffer empfängt, auf den der ReturnBuffer-Parameter in Zeichen verweist. Diese Zahl enthält den NULL-Abschlussator . Wenn die erforderliche Größe größer als der durch 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 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.

Hinweis

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

SetupGetSourceFileSize

SetupGetSourceInfo