void C2DFileDialog::getDiskDrivers(std::vector<std::wstring> &strDrivers)
{
wchar_t buff[256];
int len = GetLogicalDriveStringsW(sizeof(buff), buff);
int preDriverIndex =0;
for(int i = 0; i < len ; i++)
{
if(buff[i] == 0)
{
wchar_t *p =&buff[preDriverIndex];
std::wstring tmp(p);
if(GetDriveType(p) ==DRIVE_FIXED)
//type include:DRIVE_UNKNOWN DRIVE_RAMDISK:DRIVE_CDROM:DRIVE_REMOTE:DRIVE_FIXED:DRIVE_REMOVABLE:DRIVE_NO_ROOT_DIR:
{
strDrivers.push_back(tmp);
preDriverIndex=i+1;
}
if(buff[preDriverIndex]==0 && preDriverIndex!=0)
break;
}
}
}
{
wchar_t buff[256];
int len = GetLogicalDriveStringsW(sizeof(buff), buff);
int preDriverIndex =0;
for(int i = 0; i < len ; i++)
{
if(buff[i] == 0)
{
wchar_t *p =&buff[preDriverIndex];
std::wstring tmp(p);
if(GetDriveType(p) ==DRIVE_FIXED)
//type include:DRIVE_UNKNOWN DRIVE_RAMDISK:DRIVE_CDROM:DRIVE_REMOTE:DRIVE_FIXED:DRIVE_REMOVABLE:DRIVE_NO_ROOT_DIR:
{
strDrivers.push_back(tmp);
preDriverIndex=i+1;
}
if(buff[preDriverIndex]==0 && preDriverIndex!=0)
break;
}
}
}