Filou Geschrieben 12. April 2002 Geschrieben 12. April 2002 Hallo! Ich habe mit der Funktion "_getdrive()" die Laufwerke meines Computers herausgefunden und in eine versteckte Listbox geschrieben. Jetzt habe ich das Problem, daß ich unterscheiden muss, welches Laufwerk ein Floppy, ein CD-ROM, eine Festplatte oder Netzlaufwerk ist. Kann mir da jemand weiterhelfen? Danke im Vorraus. ----------------------------------------------------------------------------------- Mein Quellcode: char szDirectory[MAX_PATH]; CListBox *pListBox; int drive, curdrive; char szDrive[80]; // Save current drive in the Listbox (IDC_LISTDRIVES). GetCurrentDirectory(sizeof(szDirectory),szDirectory); pListBox = (CListBox*) GetDlgItem(IDC_LISTDRIVES); pListBox->ResetContent(); curdrive = _getdrive(); // If we can switch to the drive, it exists. for( drive = 2; drive <= 26; drive++ ) { if( !_chdrive( drive ) ) { sprintf(szDrive ,"%c:", drive + 'A' - 1 ); pListBox->AddString(szDrive); } } _chdrive( curdrive ); SetCurrentDirectory(szDirectory);
Eight Geschrieben 12. April 2002 Geschrieben 12. April 2002 Hi, du solltest dir mal die Funktion 'UINT GetDriveType(LPCTSTR lpRootPathName)' näher ansehen.
Klotzkopp Geschrieben 12. April 2002 Geschrieben 12. April 2002 Ich schick Euch mal dahin, wo Ihr hingehört: ~~~ verschoben nach: ---> C++: Compiler, IDEs, APIs ~~~
EvilInside Geschrieben 18. April 2002 Geschrieben 18. April 2002 Das Ermitteln der Laufwerke kannst Du auch per API-Call erledigen: Der entsprechende API-Call lautet GetLogicalDriveStrings und gibt Dir einen Zeiger auf eine Liste von null-terminierten Strings wieder, die jeweils einen Laufwerksbuchstaben enthalten. Siehe auch hier: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/fileio/filesio_8jhv.asp Den Laufwerktstyp kriegst Du mit Hilfe von GetDriveType (wie schon oben von Eight erwähnt). HTH, Evil
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden