Hi folks,
I’ve been experimenting with a simple bus filter that specifically cares
about CdRom devices. Upon boot, when I examine the results of a
BusRelations query (in this case on the IDE bus), the single CdRom
device PDO shows up with DeviceType 0x2D (FILE_DEVICE_MASS_STORAGE)
instead of 0x02 (FILE_DEVICE_CD_ROM) as I expected. The IDE harddisk
also shows up with type 0x2D.
Using a CdRom upper filter I notice that the first AddDevice after boot
also shows up with a PDO of 0x2D. Sometime soon thereafter, however,
the DeviceType value on that PDO is changed to 0x02. (And if I install
my filters after booting the DeviceType is always 0x02.) Can somebody
tell me who changes this value and based on what procedure or
information? Is there a reliable way to distinguish a CdRom device at
this early stage (at bus enumeration)?
Thanks,
David
ignore the device type and issue an IOCTL_STORAGE_QUERY_PROPERTY to get
the device descriptor. This (i beleive) will contain the SCSI device
type.
-p
-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of David Lavo
Sent: Monday, May 16, 2005 4:17 AM
To: Windows System Software Devs Interest List
Subject: [ntdev] When is a CdRom not a CdRom?
Hi folks,
I’ve been experimenting with a simple bus filter that
specifically cares about CdRom devices. Upon boot, when I
examine the results of a BusRelations query (in this case on
the IDE bus), the single CdRom device PDO shows up with
DeviceType 0x2D (FILE_DEVICE_MASS_STORAGE) instead of 0x02
(FILE_DEVICE_CD_ROM) as I expected. The IDE harddisk also
shows up with type 0x2D.
Using a CdRom upper filter I notice that the first AddDevice
after boot also shows up with a PDO of 0x2D. Sometime soon
thereafter, however, the DeviceType value on that PDO is
changed to 0x02. (And if I install my filters after booting
the DeviceType is always 0x02.) Can somebody tell me who
changes this value and based on what procedure or
information? Is there a reliable way to distinguish a CdRom
device at this early stage (at bus enumeration)?
Thanks,
David
Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256
You are currently subscribed to ntdev as:
xxxxx@windows.microsoft.com To unsubscribe send a blank
email to xxxxx@lists.osr.com