Registry permissions...of niet?

Status
Niet open voor verdere reacties.

djenn

Gebruiker
Lid geworden
2 sep 2006
Berichten
68
IK ben wat aan het tobben met de Registry, en besloot na het lezen van tig sites om het netjes te programmeren.
Maar ik kwam op rare gewaarwording uit, zie onderstaande code:
Code:
/       Dit leek me de "nette manier" 
      

        Dim HKCU As RegistryKey = Registry.CurrentUser
        Dim Regkey As RegistryKey = HKCU.OpenSubKey("Software", True)
        Dim subkey As RegistryKey = Regkey.CreateSubKey("test", RegistryKeyPermissionCheck.Default, RegistryOptions.None)
        subkey.SetValue("Naam", "waarde")

/       Maar zo werkt het ook ! Zelfs voordat "Test" van te voren is aangemaakt
         My.Computer.Registry.SetValue("HKEY_CURRENT_USER\Software\Test\", "Naam", "waarde")
De vraag is, waarom zou je zoveel moeite doen als het met een regeltje ook kan, waar zit de valkuil?
 
De 1-regelige methode is prima als je precies weet met welke waarde je aan de slag gaat.
Als je programma afhankelijk is van user of andere input moet je met variabelen gaan werken, zoals in de "nette manier".
 
Het ging me eigenlijk om de permission die je moet geven om een key of subkey aan te maken, los van het feit welke waarde er geschreven gaat worden.
Bij het eerste voorbeeld moet je telkens (True) aangeven of er geschreven mag worden, terwijl het onderste voorbeeld gewoon die subkey en waarde neerkwakt.
 
Dat zal dan een verplichte parameter zijn van het Registery object en heeft My.Computer.Registry deze niet nodig.
 
In HKCU heb je standaard (als gebruiker) gewoon schrijfrechten, he... Dat zijn nl. je EIGEN instellingen.
Het is niet HKLM he...

Tijs.
 
Dat zg je nu dnties, ik heb voor de grap de permissions verwijdert uit de code die ik het eerst gepost heb, en je kunt zien in de bijlage dat het in regel 11 toch fout gaat.
Dus weet ik het zo net nog niet
Image3.jpg
 
Ok, .NET is niet mijn pakkie an, maar klassieke Systeem-Analyse wel. Daar zit 'm de kneep. Daarin declareer je structureel alle variabelen. Met als gevolg dat als je een variabele aanroept, dat die daadwerkelijk bestaat, maar ook voldoende geheugen ter beschikking heeft.

Een van de regels van netjes programmeren... ;)

Zoek eens op JSP/JSD, Michael Jackson. (No joke!)

:cool:
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan