Suche Funktion zum anzeigen aller physikalischen Laufwerke



  • Hi,

    ich suche eine Funktion zum anzeigen aller physikalischen Laufwerke.
    Ein Codebeispiel wäre nett...

    Danke schonmal 🙂



  • Hallo,

    GetLogicalDrives und GetDriveType sollten reichen:

    char* driveFild = "abcdefghijklmnopqrstuvwxyz";
    
    DWORD logDrive = GetLogicalDrives();
    
    CString drive;
    DWORD testBit = 1;
    TRACE("Logische Drives:\n");
    for (int i=0; i<26; i++)
    {
    	if (logDrive & testBit)
    	{
    		drive.Format("%c:\\", driveFild[i]);
    		UINT driveType = GetDriveType(drive.GetBuffer(0));
    		switch(driveType)
    		{
    			case DRIVE_REMOTE	 : drive = ">" + drive + " ist ein Netzlaufwerk\n"; break;
    			case DRIVE_RAMDISK	: drive = ">" + drive + " ist eine RAM Disk\n"; break;
    		//  case ...
    			default	: drive = ">" + drive + " ist physikalisches LW\n";
    		}
    		TRACE(drive);
    	}
    	testBit = (testBit << 1);
    }
    

    Gruss mathi


Log in to reply