GetDeviceDriverFileNameA-Funktion (psapi.h)
Ruft den Pfad ab, der für den angegebenen Gerätetreiber verfügbar ist.
Syntax
DWORD GetDeviceDriverFileNameA(
[in] LPVOID ImageBase,
[out] LPSTR lpFilename,
[in] DWORD nSize
);
Parameter
[in] ImageBase
Die Ladeadresse des Gerätetreibers.
[out] lpFilename
Ein Zeiger auf den Puffer, der den Pfad zum Gerätetreiber empfängt.
[in] nSize
Die Größe des lpFilename- Puffers in Zeichen. Wenn der Puffer nicht groß genug ist, um den Pfad und das endende NULL-Zeichen zu speichern, wird die Zeichenfolge abgeschnitten.
Rückgabewert
Wenn die Funktion erfolgreich ist, gibt der Rückgabewert die Länge der in den Puffer kopierten Zeichenfolge an, nicht einschließlich eines endenden Nullzeichens.
Wenn die Funktion fehlschlägt, ist der Rückgabewert null. Rufen Sie GetLastErrorauf, um erweiterte Fehlerinformationen zu erhalten.
Bemerkungen
Ab Windows 7 und Windows Server 2008 R2 richtet Psapi.h Versionsnummern für die PSAPI-Funktionen ein. Die PSAPI-Versionsnummer wirkt sich auf den Namen aus, der zum Aufrufen der Funktion und der Bibliothek verwendet wird, die ein Programm laden muss.
Wenn PSAPI_VERSION 2 oder höher ist, wird diese Funktion als K32GetDeviceDriverFileName in Psapi.h definiert und in Kernel32.lib und Kernel32.dllexportiert. Wenn PSAPI_VERSION 1 ist, wird diese Funktion als GetDeviceDriverFileName in Psapi.h definiert und in Psapi.lib exportiert und Psapi.dll als Wrapper, der K32GetDeviceDriverFileNameaufruft.
Programme, die in früheren Versionen von Windows und Windows 7 und höher ausgeführt werden müssen, sollten diese Funktion immer als GetDeviceDriverFileNameaufrufen. Um die korrekte Auflösung von Symbolen sicherzustellen, fügen Sie dem TARGETLIBS-Makro Psapi.lib hinzu, und kompilieren Sie das Programm mit "-DPSAPI_VERSION=1". Laden Sie Psapi.dll, um laufzeitbasierte dynamische Verknüpfungen zu verwenden.
Anmerkung
Der psapi.h-Header definiert GetDeviceDriverFileName als Alias, der automatisch die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante 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- | psapi.h |
Library | Kernel32.lib unter Windows 7 und Windows Server 2008 R2; Psapi.lib (wenn PSAPI_VERSION=1) unter Windows 7 und Windows Server 2008 R2; Psapi.lib unter Windows Server 2008, Windows Vista, Windows Server 2003 und Windows XP |
DLL- | Kernel32.dll unter Windows 7 und Windows Server 2008 R2; Psapi.dll (wenn PSAPI_VERSION=1) unter Windows 7 und Windows Server 2008 R2; Psapi.dll unter Windows Server 2008, Windows Vista, Windows Server 2003 und Windows XP |