[VB.NET - WPF Webform] Permissions.FileIOPermission mislukt

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • PHiXioN
  • Registratie: Juni 2004
  • Laatst online: 17-09 07:02
Ik ben zelf bekend met VBA in Office en heb in een ver verleden ooit wat met VB 6 gedaan, maar nu wil ik een stapje professioneler aan de slag en bij voorkeur browser based. Daarom ben ik begonnen in Visual Studio 2008 Express met uittesten wat de mogelijkheden zijn.

Ik loop echter tegen een probleem aan, waar ik geen werkende oplossing voor weet te vinden. Ik wil namelijk voor een project dat ik mijn hoofd heb een aantal forse delimited files inlezen. Ik krijg alleen geen simpel textbestand ingelezen. Een stuk code dat ik van het internet heb geplukt en aangepast zou moeten werken, maar dat doet het niet.

Dit is de code:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs) Handles Button1.Click
        Using MyReader As New  _
Microsoft.VisualBasic.FileIO.TextFieldParser("C:\test.txt")
            MyReader.TextFieldType = FileIO.FieldType.Delimited
            MyReader.SetDelimiters(",")
            Dim currentRow As String()
            While Not MyReader.EndOfData
                Try
                    currentRow = MyReader.ReadFields()
                    Dim currentField As String
                    For Each currentField In currentRow
                        MsgBox(currentField)
                    Next
                Catch ex As Microsoft.VisualBasic.FileIO.MalformedLineException
                    MsgBox("Line " & ex.Message & _
                    "is not valid and will be skipped.")
                End Try
            End While
        End Using

    End Sub


Ik krijg de volgende boodschap:
De aanvraag voor machtiging van type System.Security.Permissions.FileIOPermission, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 is mislukt.
Nu dacht ik een solution te hebben gevonden, maar deze werkt niet.

code:
1
2
3
4
5
6
7
    'Set permission doing the following:
    '
    'Change the Code Group permission setting to Full Trust.
    '
    'Via Control Panel -> Administrative Tools -> Microsoft .NET Framework 1.1 Configuration
    '  -> Runtime Security Policy -> Machine -> Code Groups 
    '-> All_Code, and set the permission to "Full Trust"


Dit heb ik gedaan en krijg nog steeds dezelfde error. Heeft iemand dit eerder opgelost en zou je mij kunnen uitleggen hoe ik dit wel werkend krijg? Elke vorm van hulp is welkom, alvast dank hiervoor.

Acties:
  • 0 Henk 'm!

  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 11:46

TeeDee

CQB 241

Mja... ik zou in eerste instantie eens proberen om de juiste rechten op het file alleen geven.

Heart..pumps blood.Has nothing to do with emotion! Bored


Acties:
  • 0 Henk 'm!

  • Stoffel
  • Registratie: Mei 2001
  • Laatst online: 19-09 10:17

Stoffel

Engineering the impossible

Ik haal uit je titel dat je met WPF in een browser (dus silverlight) werkt? Dan is dat meteen je probleem, Silverlight browser apps mogen niet zomaar in het filesysteem lezen. Dat zou ook wel even een huge beveiligingsrisico zijn. Het kan alleen in een bepaalde folder (isolated storage - google) voor zover ik weet.

Acties:
  • 0 Henk 'm!

  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 11:46

TeeDee

CQB 241

Stoffel schreef op donderdag 02 juli 2009 @ 23:03:
Ik haal uit je titel dat je met WPF in een browser (dus silverlight) werkt? Dan is dat meteen je probleem, Silverlight browser apps mogen niet zomaar in het filesysteem lezen. Dat zou ook wel even een huge beveiligingsrisico zijn. Het kan alleen in een bepaalde folder (isolated storage - google) voor zover ik weet.
WPF kan 'prima' in de browser, via XBAP. :)

Als het inderdaad Silverlight is, gaat het imo zomaar niet lukken. Tenzij je weer gaat truuken met out of browser apps.

Heart..pumps blood.Has nothing to do with emotion! Bored


Acties:
  • 0 Henk 'm!

  • jip_86
  • Registratie: Juli 2004
  • Laatst online: 14:06
WPF is sowieso al geen .Net 1.1. Lijkt me dat configuratie met een 1.1 tool niet gaat werken.
Ik zou even kijken waar je dat bestand laat. Webpagina's mogen niet zomaar overal lezen van je hele computer. Met je Visual Studio webserver kun je die .txt het beste in je bin/debug map zetten, als je iis gebruikt iig in de wwwroot.

Acties:
  • 0 Henk 'm!

  • Snake
  • Registratie: Juli 2005
  • Laatst online: 07-03-2024

Snake

Los Angeles, CA, USA

TeeDee schreef op donderdag 02 juli 2009 @ 23:08:
[...]

WPF kan 'prima' in de browser, via XBAP. :)

Als het inderdaad Silverlight is, gaat het imo zomaar niet lukken. Tenzij je weer gaat truuken met out of browser apps.
XBAP draait ook in medium trust. Grote verschil tussen XBAP en Silverlight zijn dat XBAP de volledige WPF is, en dat je dus een ander type plugin nodig hebt als voor Silverlight.

Je kan dus de volledige 3d library en dergelijke aanspreken, whereas Silverlight veel beperkter is. Maar XBAP is dus alleen op Windows (IE en Firefox, ik weet niet of het in andere is).

Going for adventure, lots of sun and a convertible! | GMT-8


Acties:
  • 0 Henk 'm!

  • Razr
  • Registratie: September 2005
  • Niet online
Volgens mij is dit standaard gedrag van Vista en hoger. Als je bijv. een bestand naar je C:\ root kopieert komt ook eerst UAC in beeld.

Probeer het bestand is te benaderen via een pad naar je desktop of een andere partitie. Misschien kun je ook proberen VS2008 te runnen als Administrator.

En in je productie omgeving zorg je gewoon dat het bestand de benodigde rechten heeft met de user waar je webserver ook gebruikt van maakt.

Acties:
  • 0 Henk 'm!

  • PHiXioN
  • Registratie: Juni 2004
  • Laatst online: 17-09 07:02
Bedankt voor de replies.


Ik zit even in dubio over wat te doen, want het is inderdaad niet de bedoeling dat een web-applicatie overal bij komt. Het bestand waar we over spreken hoort dan ook server-side te staan. Ik draai trouwens op een xp-machine. Is er eventueel een andere manier om eenvoudig een webform in the richten met vb in de achtergrond, want het hoeft niet persé met fancy met nieuwe technieken als silverlight.


Zodra ik thuis ben ga ik meteen de debug folder proberen, om te zien of dat werkt zonder enorme beveiligingscompromissen te doen.

[ Voor 13% gewijzigd door PHiXioN op 03-07-2009 16:06 ]


Acties:
  • 0 Henk 'm!

  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 11:46

TeeDee

CQB 241

PHiXioN schreef op vrijdag 03 juli 2009 @ 15:57:
Is er eventueel een andere manier om eenvoudig een webform in the richten met vb in de achtergrond, want het hoeft niet persé met fancy met nieuwe technieken als silverlight.
Gewoon met Visual Studio (Express) en een Web Applicatie / WebSite project.

Heart..pumps blood.Has nothing to do with emotion! Bored


Acties:
  • 0 Henk 'm!

  • PHiXioN
  • Registratie: Juni 2004
  • Laatst online: 17-09 07:02
Ik heb het inlezen van bestanden werkend gekregen door bij My Project binnen Visual Studio naar properties te gaan en daar in het security tabje de applicatie op "Full trust" te zetten. Nu is mijn vervolgvraag of dit geen ongewenste effecten gaat opleveren qua security, tegen de tijd dat ik iets heb opgebouwd en in een werkomgeving wordt gebruikt.
Pagina: 1