Partitionsnamen und Laufwerksbuchstaben



  • Hi,

    ich weis nicht ob ich mit meiner frage hier richtig bin, aber ich
    poste einfach mal:

    Ich bin neu hier im Forum aber nicht ganz neu in sachen C/C++

    Ich habe folgendes Problem: ich habe 2 partitionen,
    und schreibe grad ein programm das auf partition A läuft, und ein anderes
    Programm von Partition B aufrufen muss. Wäre mit direkten Pfad angaben alles kein
    Problem, wenn sich die Partitionen nicht auf einem USB stick befinden würden,
    dessen laufwerksbuchstaben auf jedem system anders sind.

    nun, ich hab 3 Anhaltspunkte:
    1. Die partition von der das programm aus gestartet wird bekam beim mounten
    den ersten freien buchstaben
    2. Die 2. partition auf der das zu startende Programm lagert hat den nächsten buchstaben (buchstabe von partition A + ein buchstabe)
    3. Der Name der 2. Partition ist bekannt.

    für das Problem hab ich 2 theoretische lösungsansätze:
    1. ich hol mir den buchstaben der aktuellen partition, und nehme für meinen festen pfad auf partition 2 einfach den nächsten.
    -> hier ist mein problem: wie bekomme ich den buchstaben der aktuellen partition?

    2. es gäbe eine methode anhand eines bekannten partitionsnamens den entsprechenden laufwerksbuchstaben zu bekommen?
    -> geht das irgendwie? und wenn ja wie?

    übrigens handelt es sich um ein konsolenanwendung

    Dake schonmal im voraus für alle tipps und hinweise!

    gruß
    Ephraim



  • Eventuell klappt es so:

    - mit FindFirstVolume/FindNextVolume alles Volumes durchsuchen
    - mit GetVolumeInformation den Namen des Volumes ermitteln und mit dem bekannten String vergleichen

    Eventuell sind auch andere funktionen hiervon hilfreich:
    Volume Management Functions http://msdn2.microsoft.com/en-us/library/aa365730.aspx


Anmelden zum Antworten