CM_Get_Sibling

CM_Get_Siblingで、兄弟デバイスのDevInstを取得する。

CM_Get_Sibling関数 (cfgmgr32.h) - Win32 apps | Microsoft Learn
ドライブ名からデバイス情報を取得する(DEVINST系)(UsefullCode.net)

CM_Get_Childに加えて、CM_Get_Siblingや、CM_Get_Parentを使うと、デバイス探索ができる。
CM_Get_Sibling.cppで、

子を探索しきったら、兄弟を探索し、その子供も探索しきる。
それらが終わったら、親に戻ってその兄弟と子供を探索。
それが終わったら、また1つ親に戻り、繰り返す。
これを一番上の親まで繰り返す。

Cドライブ、Dドライブの、DevInstがわかった。
Cドライブ、Dドライブの、DevInstがわかった。

Cドライブ、Dドライブの、DevInstがわかった。
Volumeばかりなのが気になる。
DiskやUSBは直接繋がっては無いのだろうか。

Sample/winapi/CM_Get_Sibling/CM_Get_Sibling/src/CM_Get_Sibling at master · bg1bgst333/Sample · GitHub