Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Im folgenden Beispielcode werden die EnumDeviceDrivers Funktion verwendet, um die aktuellen Gerätetreiber im System aufzählen zu können. Sie übergibt die aus diesem Funktionsaufruf abgerufenen Ladeadressen an die GetDeviceDriverBaseName Funktion, um einen Namen abzurufen, der angezeigt werden kann.
#include <windows.h>
#include <psapi.h>
#include <tchar.h>
#include <stdio.h>
// To ensure correct resolution of symbols, add Psapi.lib to TARGETLIBS
// and compile with -DPSAPI_VERSION=1
#define ARRAY_SIZE 1024
int main( void )
{
LPVOID drivers[ARRAY_SIZE];
DWORD cbNeeded;
int cDrivers, i;
if( EnumDeviceDrivers(drivers, sizeof(drivers), &cbNeeded) && cbNeeded < sizeof(drivers))
{
TCHAR szDriver[ARRAY_SIZE];
cDrivers = cbNeeded / sizeof(drivers[0]);
_tprintf(TEXT("There are %d drivers:\n"), cDrivers);
for (i=0; i < cDrivers; i++ )
{
if(GetDeviceDriverBaseName(drivers[i], szDriver, sizeof(szDriver) / sizeof(szDriver[0])))
{
_tprintf(TEXT("%d: %s\n"), i+1, szDriver);
}
}
}
else
{
_tprintf(TEXT("EnumDeviceDrivers failed; array size needed is %d\n"), cbNeeded / sizeof(LPVOID));
return 1;
}
return 0;
}