检测是否从USB驱动器运行

时间:2017-01-29 11:27:52

标签: c++

在C ++中是否有任何方法可以检测我的程序是否是从一个拇指驱动器运行的?这样做可以解决USN期刊的问题。

2 个答案:

答案 0 :(得分:0)

您可以尝试使用fstat(2)上的argv[0]获取有关二进制文件所在位置的信息。

它不是C ++特有的,它也适用于普通的C.

之后您可能想要枚举连接到系统的USB设备,此操作取决于操作系统(对于Linux,例如,可以找到答案here)。

答案 1 :(得分:0)

使用SetupDiGetDeviceRegistryProperty功能可以获得您想知道的内容。

这对您来说也很有趣:GetDriveType函数记录在Microsoft开发人员资源上。

您从argv [0]获得的当前驱动器号。