Zugriff auf C:\



  • Hi Ich glaube ich habe den Dreh raus! Ich hab jetzt ne andere Lösung!
    Also erstmal vielen Dank an theta! Ich hatte mir zwar in den Einstellungen für C:\ Theoretisch alle Rechte freigeschaltet unter Eigenschaften->Sicherheit->Gruppen und Benutzernamen: Jeder->Bearbeiten->Schreiben = true; auf Deutsch Bei Schreiben ein Häkchen gesetzt! Also falls es wirklich nur die Rechte waren, kann man zwar nicht auf das Hauptverzeichnis C:\ zugreifen, aber auf das Benutzerverzeichnis. Das siet man auch dass wenn man in C:\ Kontextmenü->Neu->... geht nur Ordner findet, wenn man weiter in den Benutzerordner geht, kann man wieder Problemlos Dateien anlegen!

    Also einfach ins Benutzerverzeichnis!

    Und zum Abschluss @Mechanis:
    Ich habe am Anfang Visual C++ geschrieben, da es von Visual Studio C++, C#, Basic... gibt und nur eine Entwicklungsumgebung die sowohl Visual als auch C++ enthält und laut deinem Zitat:

    Es gibt Visual Studio 2010 und damit kannst du alles machen

    Ist die Angabe Visual Studio ungenau!
    Und wie du hier siehst sagen selbst "Profis": Visual C++ 2010/2008
    http://www.weltbild.at/media/ab/2/018/624/018.624.717.jpg



  • Gemäss der Doku (http://msdn.microsoft.com/en-us/library/8bf5hy2e.aspx) sollte eine IOException geworfen werden, falls der SaveFile(..) Aufruf fehlschlägt.

    Wird so eine Exception geworfen?
    Falls nicht, könnte es sein, dass es geklappt hat (=die Datei wurde geschrieben) aber nicht dorthin wo du es erwartet hast? Ev. kannst Du der Datei mal einen eindeutigen Namen geben und anschliessen die ganze Festplatte durchsuchen.



  • Ja mach ich! Hatte ich auchschon vermutet! Also wenn man eine Pfadangabe weglässt also nur schreibt:

    richTextBox1->SaveFile("Verzeichnis.txt",RichTextBoxStreamType::PlainText);
    

    dann schreibt er es ohne Fehlermeldung in das Programmverzeichnis, die Frage ob nur im Debugger, Releaser 😃 Wenn man ihn so nennen mag, oder auch wenn man es wo anders installiert... Na ja hat den Vorteil:
    Wenn Leute nur eine C Partition haben, installieren sie es dort un müllen sich dort mit dem File die Festplatte zu oder sie installieren es nach z.B. D:\ und haben es dort! Zumindest findet er es dann auch mit dem Befehl:

    richTextBox1->LoadFile("Verzeichnis.txt",RichTextBoxStreamType::PlainText);
    

    immer gleich wieder. Aber trotzdem vielen Dank und villeicht hören wir noch von einander wenn du auchmal ein Problem hast 😉



  • Super**** schrieb:

    Und zum Abschluss @Mechanis:
    Ich habe am Anfang Visual C++ geschrieben, da es von Visual Studio C++, C#, Basic... gibt und nur eine Entwicklungsumgebung die sowohl Visual als auch C++ enthält und laut deinem Zitat:

    Es gibt Visual Studio 2010 und damit kannst du alles machen

    Ist die Angabe Visual Studio ungenau!
    Und wie du hier siehst sagen selbst "Profis": Visual C++ 2010/2008
    http://www.weltbild.at/media/ab/2/018/624/018.624.717.jpg

    Du hast am Anfang kein Visual C++ geschrieben, sondern C++.
    Visual C++ ist keine Sprache, genauso wenig ist Visual C++ 2010 eine Sprache.
    Der Buchtitel von den "Profis" bezieht sich auf die IDE, also auf Visual C++ 2008 Express Edition. Mit dieser Version kann man "nur" C++ oder C++/CLI Projekte entwickeln, kein C# oder VB .Net, dazu müsste man die Version Visual C# 2008 Express besitzen oder Visual Basic 2008 Express.
    Die IDE Visual Studio beinhaltet jedoch ISO C++ (C++/CLI, MFC), C#, J#, und VB.

    Dieses Visual steht nur dafür, dass es aus dem Hause Microsoft kommt.
    Zum Beispiel Visual C++ 6.0

    http://imageshack.us/photo/my-images/14/fmvcmbcab370.gif/

    Gruß



  • Die Windows API akzeptiert auch Slashes in Pfaden, nicht nur Backslashes, das sollte also gehen.

    Das Cover schaut voll professionell aus 😉 Es spricht ja auch nichts dagegen, von Visual C++ zu spechen. Nur ist damit noch nicht gesagt, was du genau machst. Was du machst ist nämlich C++/CLI, das ist wichtiger, als die Angabe, dass du es mit Visual C++ machst.



  • Ich habe mal wieder ein Problem:
    Ich möchte mit SaveFileDialog eine Datei speichern!
    Allerdings möchte ich dannach nicht nur auf:

    mySaveFileDialog->Filename
    

    zugreifen können, sondern auch auf den Pfad, da die Datei dann nämlich automatisch gespeichert werden soll! Ich hatte mir das So vorgestellt:

    private: System::Void...
        {
            if(save == false)
            {
            //SaveFileDialog anzeigen
            }
            else / if(save == true)
            {
            richTextBox1->SaveFile(mySaveFileDialog->FilePath + "\\" + mySaveFileDialog->FileName,RichTextBoxStreamType::RichText);
            }
        }
    

    Allerdings ist FilePath oda so kein Element von SaveFileDiaolg, so weit ich weiß!
    Kann mir jemand weiter helfen?
    Danke im Voraus Super****



  • System::IO::Path::GetDirectoryName
    

    Und Pfade baut man so zusammen:

    System::IO::Path::Combine(path1, path2)
    


  • Danke erstmal!
    Könntest du das dann mal als Codebeispiel schreiben, wie ich den Pfad des SAVE FILE DIALOG auslese! Also der Ausgewählten Datei!
    Gruß Supermään



  • Hallo Supermään,

    (Open/Save)FileDialog.FileName enthält immer den kompletten Pfad:

    MSDN schrieb:

    Hinweise

    Der Dateiname enthält sowohl den Dateipfad als auch die Erweiterung. Wenn keine Dateien ausgewählt sind, gibt diese Methode eine leere Zeichenfolge ("") zurück.



  • Danke! Funktioniert Prima!
    LG Supermään!


Anmelden zum Antworten