Announcement

Collapse
No announcement yet.

Exception bei Anwendungsaufruf von Netzlaufwerk

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

  • Exception bei Anwendungsaufruf von Netzlaufwerk

    Hallo

    Ich habe offensichtlich grade ein Brett vor dem Kopf, vielleicht kann mir jemand weiterhelfen.

    Gegeben ist eine ganz simple Windows Forms Anwendung. Sie besteht aus einem Hauptformular, auf dem sich ein Button befindet, der folgenden Code aufruft:

    private void button1_Click(object sender, EventArgs e)
    {
    OpenFileDialog dlg = new OpenFileDialog();

    if (dlg.ShowDialog() == DialogResult.OK)
    {
    string sFile;
    sFile = dlg.FileName;
    MessageBox.Show(sFile);
    }
    }

    Wenn ich die Anwendung von einem lokalen Laufwerk aus aufrufe funktioniert alles wie erwartet. Sobald ich die Anwendung jedoch auf ein Netzlaufwerk aufrufe kommt an der Stelle "sFile = dlg.FileName;" eine Exception.

    Hat irgendjemand eine Idee in welche Richtung ich suchen muss?

    Vielen Dank, Mue

  • #2
    Was für eine Exception.
    Hast Du schon gedebuggt?

    Comment


    • #3
      As designed: Netzwerklaufwerke sind erstmal "böse". A. Kosch hat schon öfters geschrieben was man in den .NET-Konfigurationstool einstellen muß damit es geht. Einfach mal mit der Fehlermeldung die du bisher zurückhälst im Forum suchen.

      Comment


      • #4
        Habe das inzwischen erledigt, indem ich einen Strong Filename vergeben habe und im .Net Konfigurationstool Full Trust für die Anwendung vergeben habe. Trotzdem interessiert mich, ob es noch eine andere Lösung gibt, bspw. allgemeingültige Rechtevergabe im .net Framework bei der man auf Strong Name verzichten kann.



        Komplette Fehlermeldung:



        Informationen über das Aufrufen von JIT-Debuggen
        anstelle dieses Dialogfelds finden Sie am Ende dieser Meldung.

        ************** Ausnahmetext **************
        System.Security.SecurityException: Fehler bei der Anforderung des Berechtigungstyps System.Security.Permissions.FileIOPermission, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089.
        bei System.Security.CodeAccessSecurityEngine.Check(Obj ect demand, StackCrawlMark& stackMark, Boolean isPermSet)
        bei System.Security.CodeAccessPermission.Demand()
        bei System.Windows.Forms.IntSecurity.DemandFileIO(File IOPermissionAccess access, String fileName)
        bei System.Windows.Forms.FileDialog.get_FileName()
        bei WindowsApplication1.Form1.button1_Click(Object sender, EventArgs e)
        bei System.Windows.Forms.Control.OnClick(EventArgs e)
        bei System.Windows.Forms.Button.OnClick(EventArgs e)
        bei System.Windows.Forms.Button.OnMouseUp(MouseEventAr gs mevent)
        bei System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
        bei System.Windows.Forms.Control.WndProc(Message& m)
        bei System.Windows.Forms.ButtonBase.WndProc(Message& m)
        bei System.Windows.Forms.Button.WndProc(Message& m)
        bei System.Windows.Forms.Control.ControlNativeWindow.O nMessage(Message& m)
        bei System.Windows.Forms.Control.ControlNativeWindow.W ndProc(Message& m)
        bei System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
        Die Aktion, bei der ein Fehler aufgetreten ist:
        Demand
        Der Typ der ersten Berechtigung, bei der ein Fehler aufgetreten ist:
        System.Security.Permissions.FileIOPermission
        Die Zone der Assembly, bei der ein Fehler aufgetreten ist:
        Intranet


        ************** Geladene Assemblys **************
        mscorlib
        Assembly-Version: 2.0.0.0.
        Win32-Version: 2.0.50727.1433 (REDBITS.050727-1400).
        CodeBase: file:///C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll.
        ----------------------------------------
        mscorlib.resources
        Assembly-Version: 2.0.0.0.
        Win32-Version: 2.0.50727.1433 (REDBITS.050727-1400).
        CodeBase: file:///C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll.
        ----------------------------------------
        FileSearchTest
        Assembly-Version: 1.0.0.0.
        Win32-Version: 1.0.0.0.
        CodeBase: file:///Y:/FileSearchTest/Ohne.StrongName/FileSearchTest.exe.
        ----------------------------------------
        System.Windows.Forms
        Assembly-Version: 2.0.0.0.
        Win32-Version: 2.0.50727.1433 (REDBITS.050727-1400).
        CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll.
        ----------------------------------------
        System
        Assembly-Version: 2.0.0.0.
        Win32-Version: 2.0.50727.1433 (REDBITS.050727-1400).
        CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll.
        ----------------------------------------
        System.Drawing
        Assembly-Version: 2.0.0.0.
        Win32-Version: 2.0.50727.1433 (REDBITS.050727-1400).
        CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll.
        ----------------------------------------
        System.Configuration
        Assembly-Version: 2.0.0.0.
        Win32-Version: 2.0.50727.1433 (REDBITS.050727-1400).
        CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Configuration/2.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll.
        ----------------------------------------
        System.Xml
        Assembly-Version: 2.0.0.0.
        Win32-Version: 2.0.50727.1433 (REDBITS.050727-1400).
        CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Xml/2.0.0.0__b77a5c561934e089/System.Xml.dll.
        ----------------------------------------
        System.Windows.Forms.resources
        Assembly-Version: 2.0.0.0.
        Win32-Version: 2.0.50727.42 (RTM.050727-4200).
        CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Windows.Forms.resources/2.0.0.0_de_b77a5c561934e089/System.Windows.Forms.resources.dll.
        ----------------------------------------

        ************** JIT-Debuggen **************
        Um das JIT-Debuggen (Just-In-Time) zu aktivieren, muss in der
        Konfigurationsdatei der Anwendung oder des Computers
        (machine.config) der jitDebugging-Wert im Abschnitt system.windows.forms festgelegt werden.
        Die Anwendung muss mit aktiviertem Debuggen kompiliert werden.

        Zum Beispiel:

        <configuration>
        <system.windows.forms jitDebugging="true" />
        </configuration>

        Wenn das JIT-Debuggen aktiviert ist, werden alle nicht behandelten
        Ausnahmen an den JIT-Debugger gesendet, der auf dem
        Computer registriert ist, und nicht in diesem Dialogfeld behandelt.

        Comment


        • #5
          Du kannst doch im o.g. Tool Laufwerke für .NET zulassen.

          Comment

          Working...
          X