2011-06-12 3 views
2

Je dois modifier Registre dans vb.net (2010) je sais comment le modifier dans un fichier .reg mais pas en 2010 de Visual Basic si elle aide c'est le codeModifier registre dans Vb.net

 Windows Registry Editor Version 5.00 
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\system] 
"dontdisplaylastusername"=dword:00000000 
"legalnoticecaption"="            Justin Tech" 
"legalnoticetext"="This computer system, including all related equipment, is the property of the Justint Tech and is solely for uses authorized by jUSITN tECH. You have no right to privacy on the system, and all information and activity 

on the system may be monitored. Any unauthorized use of the system may result in disciplinary action, civil or criminal penalties." 
"shutdownwithoutlogon"=dword:00000001 
"undockwithoutlogon"=dword:00000001

Répondre

4

La classe Microsoft.Win32.RegistryKey vous fournira toutes les fonctionnalités dont vous avez besoin pour lire, modifier et supprimer les clés et les valeurs de registre.

Par exemple:

using Microsoft.Win32; 

... 

RegistryKey myKey = Registry.LocalMachine.OpenSubKey(
     @"SOFTWARE\Microsoft\Windows\CurrentVersion\policies\system", true); 

if(myKey == null) 
{ 
    myKey = Registry.LocalMachine.CreateSubKey(
      @"SOFTWARE\Microsoft\Windows\CurrentVersion\policies\system", 
      RegistryKeyPermissionCheck.ReadWriteSubTree); 
} 

myKey.SetValue("dontdisplaylastusername", 0, RegistryValueKind.DWord); 
myKey.SetValue("legalnoticecaption", "Justin Tech", RegistryValueKind.String); 
myKey.SetValue("legalnoticetext", "This computer system...", 
               RegistryValueKind.String); 
myKey.SetValue("shutdownwithoutlogon", 1, RegistryValueKind.DWord); 
myKey.SetValue("undockwithoutlogon", 1, RegistryValueKind.DWord); 

Le sous-clé HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\policies \system existera en fait, je montre seulement un test que vous feriez si vous créez vos propres clés et des valeurs d'exhaustivité.

2

Tout comme une alternative à travailler avec les clés de registre directement dans VB.NET, vous pourriez exécuter un fichier .reg directement en utilisant le code suivant:

Process.Start("regedit.exe", "fileName.reg /s") 

Le/s est de l'exécuter en silence. Le seul problème ici est que vous pourriez rencontrer la possibilité que quelqu'un d'autre modifie le fichier .reg et compromette ainsi votre sécurité. Toutefois, si vous placez le fichier .reg dans un emplacement central et que vous le faites en lecture seule, vous pouvez l'exécuter sur vos machines. Cela vous permettrait de modifier le contenu du fichier .reg sans changer de code.

Questions connexes