我想知道代码段的作用。
Drive[0] = 'A';
Drive[1] = ':';
Drive[2] = '\\';
Drive[3] = 0;
DriveMask = GetLogicalDrives();
for( anIndex = 0; anIndex < 26;
anIndex++ )
{
if( DriveMask & 1 )
{
Drive[0] = 'A' + anIndex;
DriveMask >>= 1;
}
}
请让我知道你的答案。
感谢您抽出宝贵时间阅读我的帖子。
最佳答案
它枚举了A:\和Z:\之间所有可能的连接驱动器,并检查它们是否可移动(例如CD,软盘)。
它循环26次,每次
DriveMask >>= 1;
使位掩码右移1位,以便可以通过来测试每个逻辑驱动器
if( DriveMask & 1 )
陆续。
GetDriveType()需要一条驱动路径,因此通过将循环计数添加到字母A(因此A,B,C,D,...,Z)并保留先前初始化的:\部分来构造标签。