Laufwerkzugriff funktioniert, funktioniert nicht, funktioniert, funktioniert nicht, ...



  • Hi,

    Laufwerkzugriff funktioniert, funktioniert nicht, funktioniert, funktioniert nicht, ...

    Ist das ein Prob vom OS?
    Der Compiler zeigt mir keinen Fehler an und es funktioniert auch abundzu.

    // Testen ob der aktuelle Wechseldatenträger beschreibbar ist
    char PathFilename[4];
    *PathFilename=Drive;
    *(PathFilename+1)=':';
    *(PathFilename+2)='\\';
    
    fstream DateiStream(strcat(PathFilename,"test.tmp"), ios::out|ios::app);
    if(DateiStream.good())
    {
      ...
    } else {
      ...
    }
    

    Grüße

    Arndt

    Edit:
    Bei Verwendung der Code-Tags die Option zum Deaktivieren derselben bitte nicht anwählen! 😉



  • Meinst du nicht, dass PathFilename mit 4Byte Grösse ein bisschen klein ist um deinen Pfad aufzunehemen. Wenn du fstream nimmst dann kannst du hier doch auch std::string (oder Borlandmässig AnsiString) verwenden. Dann sparst du dir das Gewurschtl mit den char*.
    z.Bsp.

    std::string PathFilename;
    PathFilename+=Drive;
    PathFilename+=":\\test.tmp"
    fstream DateiStream(PathFilename.c_str(), ios::out|ios::app);
    


  • wieso?
    dürfte doch hinhauen (das mit den 4 Byte).

    //1234
      "C:\ "
    

    Ich würde aber trotzdem einen String nehmen 😉



  • Ach ja?
    und das hier
    strcat(PathFilename,"test.tmp")


  • Mod

    Hallo

    "C:\ "
    

    das sollen 4 Byte sein
    bei mir sind das 5 Byte

    MfG
    Klaus



  • Ich tippe auf ein fehlendes, abschliessendes 0 von PathFilename. Sowas passiert hald, wenn man die Mechanismen von einer Sprache nicht so einsetzt wie sie gedacht waren.


Anmelden zum Antworten