2016-03-30 26 views
3

der Adresse eines PCI-Geräts Given (dh Bus-, Geräte-, Funktion), wie kann man programmatisch lesen, in Anwenderseite Win32 API-Aufrufe, der Konfigurationsraum (zB Hersteller-ID, Geräte-ID) für dieses Gerät?Zugriff auf den PCI-Konfigurationsraum mit Win32 API

Unter Linux ein oeffnet der/sys/bus/pci/devices // config-Datei und liest von rechts versetzt.

+0

In Windows würde ich versuchen, mit [WMI] (https://msdn.microsoft.com/en-us/library/windows/desktop/aa394582 (v = VS.85) .aspx) für so etwas, [ vielleicht kann die Win32_PnPEntity Klasse helfen] (https://msdn.microsoft.com/en-us/library/windows/desktop/aa394353 (v = VS.85) .aspx). – yms

+0

BIOS-Daten abgebildet wird (nur lesbar) in der Registrierung unter HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ Mssmbios \ Data, können Sie auch dieses Dokument "SMBIOS-Unterstützung in Windows" überprüfen: http://download.microsoft.com/download/5 /d/6/5d6eaf2b-7ddf-476b-93dc-7cf0072878e6/smbios.doc –

Antwort

2

können Sie verwenden, um die SetupDiGetClassDevs API eine Liste der Geräte zu durchqueren. Wenn Sie PCI im Parameter Enumerator übergeben, können Sie nur PCI-Geräte aufzählen.