System.Security.SecurityException

Status
Niet open voor verdere reacties.

famlam

Gebruiker
Lid geworden
15 okt 2008
Berichten
416
Ik krijg een foutmelding 'System.Security.SecurityException'. Weet iemand hoe ik deze foutmelding kan onderdrukken, en vervangen door een msgbox?
En weet iemand hoe ik kan opvragen wat de gebruikerspermissies zijn?
Het enige wat ik weet is dat het waarschijnlijk komt omdat ik de lijst met drives opvraag en de hoeveelheid vrije schijfruimte...

Ik testte mijn programma net op een pc (op school) met beperkte rechten... Bijna niets deed het... Load --> Error, Hoeveelheid vrije schijfruimte opvragen --> error, iets in een bestand schrijven in mijn documenten --> Error..., etc...

System.Security.SecurityException: System.Security.Permissions.SecurityPermission
bij MijnProg.Form.VrijeRuimte.GetTotalSpace(String Drive)
bij MijnProg.Form.VrijeRuimte.opnieuwrekenen()
bij MijnProg.Form.VrijeRuimte.TrackBarEenheid_Scroll_Timer_tick(Object sender, EventArgs e)
bij System.Windows.Forms.TrackBar.OnScroll(EventArgs e)
bij System.Windows.Forms.TrackBar.WndProc(Message& m)
bij System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
bij System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
bij System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
Het type van de eerste mislukte machtiging is:
System.Security.Permissions.SecurityPermission
De zone van de mislukte assembly is:
MyComputer
 
Hallo,
je kan in een Try-Catch block de fouten "filteren".

Hiermee kan je in ieder geval je SecurityException herkennen en een melding ervan maken. Als je van SecurityException alleen Exception maakt, filter je alle fouten.

Code:
Imports System.Security

Try
' Code
Catch se As SecurityException
MsgBox("Error")
End Try

Over de gebruikersrechten kan ik nu niks zeggen, mijn VS2008 doet het niet, maar kijk maar eens bij de namespace My. daar staat wel iets over users (of bij my.computer en an users oid). hoop dat je hier iets mee kunt
 
Hallo,
je kan in een Try-Catch block de fouten "filteren".

Hiermee kan je in ieder geval je SecurityException herkennen en een melding ervan maken. Als je van SecurityException alleen Exception maakt, filter je alle fouten.

Code:
Imports System.Security

Try
' Code
Catch se As SecurityException
MsgBox("Error")
End Try

Over de gebruikersrechten kan ik nu niks zeggen, mijn VS2008 doet het niet, maar kijk maar eens bij de namespace My. daar staat wel iets over users (of bij my.computer en an users oid). hoop dat je hier iets mee kunt

De enige waarvan ik vermoed dat deze iets zou kunnen is
My.User.CurrentPrincipal.Identity.IsAuthenticated
Ik krijg er de waarde 'true' uit.

Zijn er mensen die op dit moment op een pc met beperkte rechten zitten, en die eens kunnen kijken wat de waarde van isauthenticated bij hun is?
Als iemand het voor mij kan testen: ik heb eventjes kort mijn programma zo bewerkt dat hij 3 msgbox'en geeft en daarna afsluit. Kan iemand de uitkomst van msgbox 2 en 3 hier posten? Bekijk bijlage Test.zip. (p.s.: msgbox 1 = intro, msgbox 2 = die 'IsAuthenticated' (true/false), msgbox 3 = true/false/foutmelding, om te testen of er een verband is tussen 2 en de foutmelding). Ik kan het zelf niet testen omdat het vakantie is en ik dan dus 1,5 week moet wachten voordat ik het op school weer kan testen.
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan