Ordner in C:\Programme erstellen

  • VB.NET

Es gibt 7 Antworten in diesem Thema. Der letzte Beitrag () ist von Quadsoft.

    Ordner in C:\Programme erstellen

    Hallo :),
    ich habe folgendes Problem:

    Mein Programm soll beim Form1_Load Event testen ob ein bestimmter Ordner
    vorhanden ist. Wenn dieser Ordner nicht vorhanden ist soll er erstellt werden.
    Das klappt auch wenn der Ordner sich auf dem Desktop oder in Eigene Dokumente befindet,
    aber wenn ich den Pfad in "C:\Programme\Der neue Ordner" ändere passiert NICHTS.

    Hier ist der Code:

    VB.NET-Quellcode

    1. Imports System.IO
    2. Public Class Form1
    3. Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
    4. Dim DirectoryPath As String = Environment.GetFolderPath(Environment.SpecialFolder.Programs) & "\Der neue Ordner"
    5. If Directory.Exists(DirectoryPath) = True Then
    6. Else
    7. Directory.CreateDirectory(DirectoryPath)
    8. End If
    9. End Sub
    10. End Class

    Liegt es vielleicht an den Admin-Rechten? Obwohl ich Administrator bin und das Programm mit Rechtsklick-> Als Administrator ausführen starte?
    Ehm...
    Sowas DARF man einfach nicht machen XD
    Es ist doch je nach Betriebssystem garnicht mehr C:\Programme vorhanden...
    Auf Win7 gibt's zB nur Program Files (im Explorer wird in der deutschen Sprache einfach nur das Program Files mit Programme dargestellt. Der Ordner Programme selber existiert aber garnicht.)

    Du findest alle "besonderen" Ordner über Environment.Specialfolder.BLABLA ^^
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    ... Nun solltest es selber wissen. :'D

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „MemoAnMichSelbst“ ()

    Er hats aber durch ne Variable vom OS selbst ausgelsen,
    die eigentlich den richtigen Wert liefern sollte.
    Leg es mal auf ein anderes Event, da im Form_Load Event keine
    Exceptions geworfen werden.
    Always code as if the person who ends up maintaining your code is a violent psychopath who knows where you live.

    BeryJu.org BeryJu.org/Blog
    Fail! ^^ Hast natürlich recht.

    Um ne Exception im Load zu kriegen kannste nur die Fehlerquelle in nen Try-Catch Block legen und die Exception per Messagebox werfen lassen... Leider
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    ... Nun solltest es selber wissen. :'D
    DirectoryPath = "C:\Users\@@@@@@\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Der neue Ordner"

    Da isser:
    Bilder
    • Ordner.jpg

      27,84 kB, 451×159, 176 mal angesehen
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!

    Zugriff wurde verweigert

    Ich habe den Pfad auf "C:\Programm Files (x86)\Der neue Ordner" geändert und eine ErrorToString Messagebox hinzugefügt wenn ein ein Fehler auftritt.
    Jetzt steht in meiner ErrorToString Messagebox:
    "Der Zugriff auf dem Pfad "C:\Programm Files (x86)\Der neue Ordner" wurde verweigert."

    Heisst das jetzt, dass ich den Schreibschutz von Programm Files (x86) entfernen muss, oder geht das auch noch anders?