[VB.NET] Registry key » Read-Only

Pagina: 1
Acties:

  • Kroontje
  • Registratie: Juli 2002
  • Laatst online: 27-05 15:57
Ik ben sinds een aantal dagen aan het proberen te programmeren in Visual Basic .NET. Hierdoor heb ik nog niet zoveel kennis opgedaan, mocht mijn vraag te basic zijn, sluit hem dan maar..

Ik wil graag een waarde wijzigen in het register, maar.... de Registry key lijkt Read-Only te zijn. Onderstaande melding krijg ik te zijn bij het runnen van het tooltje:

code:
1
2
3
4
An unhandled exception of type 'System.UnauthorizedAccessException' occurred in 
mscorlib.dll

Additional information: Cannot write to the registry key.
Eerst dacht ik dat het met de register beveiliging niet goed zat, maar dit was niet het geval..

Na de MSDN Library (April 2003) doorgespit te hebben, blijkt dus dat de key/waarde Read-Only is.

Na flink gezocht te hebben in de MSDN en op Internet, heb ik niks kunnen vinden wat ik moet doen om de waarde (DWORD) te veranderen door de key bewerkbaar te maken..

Ik hoop dat één van jullie een oplossing voor deze n00b heeft..

  • Yoeri
  • Registratie: Maart 2003
  • Niet online

Yoeri

O+ Joyce O+

(overleden)
welke key?

Kijkje in de redactiekeuken van Tweakers.net
22 dec: Onze reputatie hooghouden
20 dec: Acht fouten


  • whoami
  • Registratie: December 2000
  • Laatst online: 00:40
Op 't eerste zicht zou ik zeggen dat je geen rechten hebt om naar de registry te schrijven.

Is dat een stukje code uit een ASP.NET app, of uit een Windows app?

https://fgheysels.github.io/


  • Kroontje
  • Registratie: Juli 2002
  • Laatst online: 27-05 15:57
code:
1
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings
En dan de DWORD-waarde: ProxyEnable.

Het is geen rechten probleem, zowel de USER als SYSTEM heeft volledige rechten. De MSDN geeft aan dat het een Read-Only probleem is..

Het is een Windows Application

[ Voor 8% gewijzigd door Kroontje op 19-02-2004 21:45 ]


  • whoami
  • Registratie: December 2000
  • Laatst online: 00:40
Met welk stukje code open je die sleutel? Welke method gebruik je?

https://fgheysels.github.io/


  • Kroontje
  • Registratie: Juli 2002
  • Laatst online: 27-05 15:57
code:
1
2
3
4
5
6
7
8
    Private Sub lklStatus_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles lklStatus.Click
        Dim regVersion As Microsoft.Win32.RegistryKey
        Dim keyValue As String
        keyValue = "Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings"
        regVersion = Microsoft.Win32.Registry.CurrentUser.OpenSubKey(keyValue, False)
        regVersion.SetValue("ProxyEnable", "1")
        regVersion.Close()
    End Sub


Stukje code heb ik gebruikt uit de MSDN Library.

[ Voor 11% gewijzigd door Kroontje op 19-02-2004 21:51 ]


  • whoami
  • Registratie: December 2000
  • Laatst online: 00:40
Ik vermoed dat je de OpenSubKey( string name ) method gebruikt.
Als je kijkt in de MSDN, of in de .NET SDK, zie je dat die method de key als 'read-only' opent.
Er is ook een overload voor die method, waarmee je kunt aangeven dat je die sleutel ook als 'writeable' wilt openen:
code:
1
OpenSubKey( string name, bool writable)


Ok, logisch dat het niet werkt...... Kijk eens in de help van die OpenSubKey method, en kijk eens welke waarde je aan de 2de parameter moet meegeven als je de key als 'writable' wilt openen. :/
Dit is gewoon een kwestie van de help eens na te kijken. :/

[ Voor 29% gewijzigd door whoami op 19-02-2004 21:52 ]

https://fgheysels.github.io/


  • Kroontje
  • Registratie: Juli 2002
  • Laatst online: 27-05 15:57
Ik schaam me diep. Ik heb constant gezocht naar 'iets' wat de sleutel bewerkbaar kon maken..

False = True

In ieder geval bedankt, hier had ik nooit aan gedacht..

[ Voor 6% gewijzigd door Kroontje op 19-02-2004 21:56 ]

Pagina: 1