non-PNP DeviceInterface

Hi all,

I have a driver here that creates a DeviceObject in DriverEntry. This
DeviceObject is not part of a device stack and is not PNP as such.

I would like to register a device interface that would point to my
DeviceObject. I call IoRegisterDeviceInterface() but the system does not
like my DO and returns STATUS_INVALID_DEVICE_REQUEST. Yes indeed, this DO
is not a physical DO.

  1. How can I register a device interface on a standalone DeviceObject?
    Or:
  2. What do I need to do to my DO in order to be considered a physical DO?

Background: I want my non-pnp driver to implement a specific device
interface.

TIA
Mat

Use IoReportDetectedDevice() to create a non-pnp device and register using that device.

Documentation is there in msdn. System will create a PDO but you will have to create a FDO and attach to device stack and also handle PnP IRP’s.

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/kmarch/hh/kmarch/k104_8o8i.asp

thanks,
Rupin

-----Original Message-----
From: Mathieu Routhier [mailto:xxxxx@guillemot.com]
Sent: Monday, August 18, 2003 3:45 PM
To: Windows System Software Developers Interest List
Subject: [ntdev] non-PNP DeviceInterface

Hi all,

I have a driver here that creates a DeviceObject in DriverEntry. This
DeviceObject is not part of a device stack and is not PNP as such.

I would like to register a device interface that would point to my
DeviceObject. I call IoRegisterDeviceInterface() but the system does not
like my DO and returns STATUS_INVALID_DEVICE_REQUEST. Yes indeed, this DO
is not a physical DO.

  1. How can I register a device interface on a standalone DeviceObject?
    Or:
  2. What do I need to do to my DO in order to be considered a physical DO?

Background: I want my non-pnp driver to implement a specific device
interface.

TIA
Mat


Questions? First check the Kernel Driver FAQ at http://www.osronline.com/article.cfm?id=256

You are currently subscribed to ntdev as: rupin.mohan@hp.com
To unsubscribe send a blank email to xxxxx@lists.osr.com

Rupin,

Thank you very much for telling me about this function. I managed to use it
successfully. I’m on XP.

The downside to this is that it is included in ntddk.h and is not available
in 98/Me. Is it the only way one can create a PDO? Is it possible to do
the equivalent under 98? The solution would have been perfect it that was
the case! :frowning:

Mat

-----Original Message-----
From: Mohan, Rupin [mailto:rupin.mohan@hp.com]
Sent: Monday, August 18, 2003 4:25 PM
To: Windows System Software Developers Interest List
Subject: [ntdev] RE: non-PNP DeviceInterface

Use IoReportDetectedDevice() to create a non-pnp device and register using
that device.

Documentation is there in msdn. System will create a PDO but you will have
to create a FDO and attach to device stack and also handle PnP IRP’s.

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/kmarch/hh/k
march/k104_8o8i.asp

thanks,
Rupin

-----Original Message-----
From: Mathieu Routhier [mailto:xxxxx@guillemot.com]
Sent: Monday, August 18, 2003 3:45 PM
To: Windows System Software Developers Interest List
Subject: [ntdev] non-PNP DeviceInterface

Hi all,

I have a driver here that creates a DeviceObject in DriverEntry. This
DeviceObject is not part of a device stack and is not PNP as such.

I would like to register a device interface that would point to my
DeviceObject. I call IoRegisterDeviceInterface() but the system does not
like my DO and returns STATUS_INVALID_DEVICE_REQUEST. Yes indeed, this DO
is not a physical DO.

  1. How can I register a device interface on a standalone DeviceObject?
    Or:
  2. What do I need to do to my DO in order to be considered a physical DO?

Background: I want my non-pnp driver to implement a specific device
interface.

TIA
Mat


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

You are currently subscribed to ntdev as: rupin.mohan@hp.com
To unsubscribe send a blank email to xxxxx@lists.osr.com


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

You are currently subscribed to ntdev as: xxxxx@guillemot.com
To unsubscribe send a blank email to xxxxx@lists.osr.com