SPDRP_SERVICEで、サービス名を取得。
SetupDiSetDeviceRegistryPropertyW 関数 (setupapi.h) - Win32 apps | Microsoft Learn
USBメモリの安全な取り外し: 相談天国
サービス名が"USBSTOR"なら、USBHDDでありUSBデバイスであると言える。
SPDRP_SERVICE.cppで、
"USBSTOR"かつDN_DISABLEABLEかつDN_REMOVABLEなら、USBデバイスなので最終的に取り出す。
![まだある状態](https://cdn-ak.f.st-hatena.com/images/fotolife/B/BG1/20230525/20230525134638.png)
まだある状態
![取り出し成功](https://cdn-ak.f.st-hatena.com/images/fotolife/B/BG1/20230525/20230525134705.png)
取り出し成功
![消えた](https://cdn-ak.f.st-hatena.com/images/fotolife/B/BG1/20230525/20230525134746.png)
消えた
Sample/winapi/SPDRP_SERVICE/SPDRP_SERVICE/src/SPDRP_SERVICE at master · bg1bgst333/Sample · GitHub