在WDM驱动中获得PCI卡的物理Slot号的方法
在WDM驱动中如何获得PCI卡的物理Slot号?
系统提供了一个函数 IoGetDeviceProperty() 来实现这个功能。该函数的声明如下:
NTSTATUS IoGetDeviceProperty( IN PDEVICE_OBJECT DeviceObject, IN DEVICE_REGISTRY_PROPERTY DeviceObject, IN DEVICE_REGISTRY_PROPERTY DeviceProperty, IN ULONG BufferLength, OUT PVOID BufferLength, OUT PVOID PropertyBuffer, OUT PULONG ResultLength );
当参数 DeviceProperty = DevicePropertyUINumber 时取回的就是PCI卡的物理Slot号。示例如下:
ULONG ulUINumber;
IoGetDeviceProperty(
pdo,
DevicePropertyUINumber,
sizeof( ULONG ),
( PVOID ) &ulUINumber,
&ulLength );
pdo参数可以在你的功能驱动的AddDevice例程中由BUS Driver传过来。
本文地址:http://www.45fan.com/a/question/71282.html