如何检索可移动存储驱动器号使用C/ c++

How to retrieve removable storage drive letter using C/C++

本文关键字:c++ 驱动器 移动存储 何检索 检索      更新时间:2023-10-16

如何获得可移动驱动器号,以便我可以创建路径并将数据从PC复制到可移动驱动器?

目前我正在使用

_getcwd(buff,b_SIZE);
MessageBox(buff);
strncpy(Root,buff,3);

如果我直接从USB运行我的软件,它将返回给我D:或E:,这取决于我想的可用性,我没有问题。但我的问题是我必须从PC上运行我的USB程序,这当然是PC的程序安装在C驱动器中,因此这个_getcwd将给我C:驱动器号。这就是为什么我正在寻找是否有一种方法来检查当前的可移动驱动器号。

这是最近的我可以找到我的问题:检测可移动驱动器(例如USB闪存驱动器)C/c++

GetLogicalDrives()将为您提供当前可用的所有驱动器。循环遍历给定的位向量(第0位是驱动器A:,第1位是驱动器B:,等等),对于每个可用的驱动器检查GetDriveType()是否返回DRIVE_REMOVABLE

或者,您可以跳过GetLogicalDrives(),并循环遍历字母表中的所有26个字母,寻找DRIVE_REMOVABLE