C 检测sd卡读卡器是否插入了卡
有人知道如何在C中使用Windows Api来检测SD卡读卡器是否插入了卡吗 平台:windows xp/visa/7/8 我用谷歌搜索了一下Windows API文档(我不熟悉它,所以可能错过了很多),但一直找不到答案 我已经看过这篇文章了,虽然很接近,但没有给我我需要的东西,因为我不想检测状态的变化,而是想知道它在查询时处于什么状态 (如果碰巧有人实现了这一点,那将是惊人的,否则我计划只与C链接) 谢谢你的帮助C 检测sd卡读卡器是否插入了卡,c,windows,winapi,sd-card,ada,C,Windows,Winapi,Sd Card,Ada,有人知道如何在C中使用Windows Api来检测SD卡读卡器是否插入了卡吗 平台:windows xp/visa/7/8 我用谷歌搜索了一下Windows API文档(我不熟悉它,所以可能错过了很多),但一直找不到答案 我已经看过这篇文章了,虽然很接近,但没有给我我需要的东西,因为我不想检测状态的变化,而是想知道它在查询时处于什么状态 (如果碰巧有人实现了这一点,那将是惊人的,否则我计划只与C链接) 谢谢你的帮助 Matt我使用windows api调用GetVolumeInformation
Matt我使用windows api调用GetVolumeInformation修复了此问题,如果驱动器未就绪,该函数将返回0。 与GetFileAttributes相比,使用GetVolumeInformation的优点是GetVolumeInformation是静默的,其中as GetFileAttributes将导致windows弹出一个框,如果找不到文件,则表明驱动器为空。也许有一种更干净的方法可以做到这一点——但这对我来说现在起作用了:)
谢谢你的帮助 假设没有这样的API,但您可以检查驱动器是否准备好(然后检查里面是否有格式化的卡)尝试读取根目录(如“D:\”)的文件属性。如果返回
FALSE
,则可以检查GetLastError()
错误代码(只需尝试为“驱动器未就绪”返回哪一个)。