Distinguishing between esata and sata drives

Hi,

I have a disk device filter and in my Add_Device function I want to find out if the device is esata or sata. Any idea how I can achieve this?

Thanks
Rehan

An IRP_MJ_PNP - IRP_MN_QUERY_CAPABILITIES IRP will be useful to you here. On IRP completion, DEVICE_CAPABILITIES is returned. If its “Removable” flag is set, that means the device is connected to an eSATA port.

Some kinds of hardware, like passive “internal SATA”->“external eSATA” adapters, just plain do not support this in any possible OS.


Maxim S. Shatskih
Microsoft MVP on File System And Storage
xxxxx@storagecraft.com
http://www.storagecraft.com

wrote in message news:xxxxx@ntdev…
> Hi,
>
> I have a disk device filter and in my Add_Device function I want to find out if the device is esata or sata. Any idea how I can achieve this?
>
> Thanks
> Rehan
>

Can’t I just use IoGetDeviceProperty with DevicePropertyRemovalPolicy?

Rehan

xxxxx@rizvi.ca wrote:

Can’t I just use IoGetDeviceProperty with DevicePropertyRemovalPolicy?

What would that tell you? ESATA does not necessarily mean “removable”,
and SATA does not necessarily mean “non-removable”.


Tim Roberts, xxxxx@probo.com
Providenza & Boekelheide, Inc.