Announcement

Collapse
No announcement yet.

Problem mit Directory.CreateDirectory()

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Problem mit Directory.CreateDirectory()

    Hallo NG

    Ich habe eine WinForm App die mir für eine spezielle App. Dateien archivieren soll. Das Archiv soll für den normalen User dann nur lesbar sein. Deshalb muss ich beim Archivieren auch mit einem anderen Benutzerkonto arbeiten. Der wechsel des Benutzers funkioniert auch.

    Jetzt habe ich eine Methode die mir die Dateien kopiert. Vorher werden aber noch die nötigen Verzeichnisse im Archiv erstellt. Genau dort laufe ich jetzt auf.

    Ich prüfe zur sicherheit ob ich mit dem richtigen Benutzer arbeite.
    WindowsIdentity id = WindowsIdentity.GetCurrent();
    id.Name sagt mir, dass ich mit dem richtigen Account arbeite.
    Mit Directory.CreateDirectory(strZielFolder); will ich dann ein Verzeichnis
    erstellen.
    Jetzt kommt der Fehler.
    "Ein Teil des Pfades W:\ konnte nicht gefunden werden."
    Erstellt werden soll @"W:\Kompost\VMSArchiv\Archiv1\Studie1\dok".
    Bestehen tut aber erst W:\Kompost\VMSArchiv.

    Im Moment hat noch Jeder Vollzugriff. An den Berechtigungen sollte es nicht liegen. Der Benutzer der mir mit id.Name gemeldet wird, hat Domainadmin rechte. Mehr geht nicht.

    Was übersehe ich noch?

    --
    MfG
    Roland Schumacher
    www.geniali.ch

  • #2
    Hallo,
    hat das verwendete Benutzerkonto auch Leserechte für das Wurzelverzeichnis <i>W:\</i>? Die Methode <i>CreateDirectory</i> hangelt sich vom Wurzelverzeichnis beginnend durch den Verzeichnisbaum, um die bereits vorhandenen Unterverzeichnisse zu ermitteln

    Comment


    • #3
      Hallo

      Ich habe das mal versucht. Leider bringt es nichts.

      An meinem System bin ich mit Roland.Schumacher angemeldet.
      Wenn ich den User nicht wechsle, dann läuft es.

      Wenn ich den User auf Domainadmin wechsle, dann kommt der Fehler. Obwohl der überall hin darf.

      Wenn ich jetzt auf roland.schumacher wechsle, was ja eigentlich keinen Sinn macht, klappt es auch nicht mehr.

      Ich vermute mal, es liegt am wechseln der Identität. Alerdings kann ich mir nicht erklären wie so es so ist. :-/

      Die Anregung, wie man die Identität wechselt habe ich von hier.
      http://msdn.microsoft.com/library/deu/default.asp?url=/library/DEU/cpref/html/frlrfSystemSecurityPrincipalWindowsIdentityClassIm personateTopic.asp

      Gruss
      Roland Schumache

      Comment

      Working...
      X