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