在资源管理器中,看见的本地硬盘和移动硬盘是一样的都是“本地硬盘(X:)”,调用GetDriveType得到的结果也是一样的,请问还有其他方法区别吗?

解决方案 »

  1.   

    假如是在linux中的话,那么他们的文件类型的标示和存放位置是不一样的,其实的还不大懂,其实本人是菜鸟……
      

  2.   

    试试这个CString GetUDisk()
    {
    int nType;
    CString str = (_T(""));
    char filename[MAX_PATH];
    FILE *stream; memset(filename, 0, MAX_PATH);
    size_t szAllDriveStrings = GetLogicalDriveStrings(0,NULL);
    char *pDriveStrings = new char[szAllDriveStrings + sizeof(_T(""))];
    GetLogicalDriveStrings(szAllDriveStrings,pDriveStrings);
    size_t szDriveString = strlen(pDriveStrings);
    while(szDriveString > 0)
    {
    pDriveStrings += szDriveString + 1;
    szDriveString = strlen(pDriveStrings);
    nType = GetDriveType (pDriveStrings);
    if( DRIVE_REMOVABLE == nType )
    {
    AfxMessageBox("Is usb disk");
    }
    } return str;
    }
      

  3.   

    我的也是,分不开,连Windows自己(资源管理器)都识别成一样的。
      

  4.   

    hoho...我用的new man的也是这样,但是aigo的就可以分出来,我想应该是硬件设计上的问题。