Appli console en VB.NET pour modifier le registre ?
Tyrell2
Messages postés251Date d'inscriptionsamedi 19 novembre 2005StatutMembreDernière intervention 2 novembre 2010
-
15 déc. 2006 à 11:18
Tyrell2
Messages postés251Date d'inscriptionsamedi 19 novembre 2005StatutMembreDernière intervention 2 novembre 2010
-
19 déc. 2006 à 12:24
Bonjour,
j'ai besoin de votre aide pour le sujet suivant :
j'ai commencé à mettre en place une appli console en VB.NET pour recuperer dans le registre le nom du processeur dans le PC (pour savoir si INTEL ou AMD). le voila :
'recupere le chemin de la première clé pour lire le nom du processeur
Dim Reg
As RegistryKey
Dim chaine
As
StringReg = Registry.LocalMachine.OpenSubKey("HARDWARE",
'affiche un message dans la consoleConsole.WriteLine(chaine)
j'ai donc un resultat qui me donne le nom, et maintenant j'aimerai automatiser à la suite de ce resultat une modification dans le registre (pour configurer un service suivant si le proc est intel ou AMD donc). pour ce faire j'ai 2 fichiers *.reg à ma disposition.
mais là ou je bloque c'est pour rajouter dans mon code comment lancer le fichier AMD.reg ou INTEL.reg suivant le resultat que me donne la clé
en resumé voila ce que je cherche à mettre en place : un exe automatique au lancement du PC qui scanne le registre pour connaitre le nom du proc, et qui modifie une valeure dans une sous clé suivant le resultat du scan..
Donc help pour m'aider à avance svp (et merci d'avance)
A voir également:
Appli console en VB.NET pour modifier le registre ?
Tyrell2
Messages postés251Date d'inscriptionsamedi 19 novembre 2005StatutMembreDernière intervention 2 novembre 2010 15 déc. 2006 à 13:35
merci pour ta reponse.
c'est effectivement tout simple comme solution, mais malheureusement pas encore intuitif pour moi.
d'ailleurs j'ai un nouveau probleme suite à ta reponse (je sens que je vais poster un bon moment dans la rubrique "débutant" avant de pouvoir en changer )
"chaine.contains" est souligné et l'info bulle me dit que "contains n'est pas un membre de string"
cs_casy
Messages postés7741Date d'inscriptionmercredi 1 septembre 2004StatutMembreDernière intervention24 septembre 201440 15 déc. 2006 à 14:33
Certainement parce que tu as compilé ton appli en mode débug. Noramalement ce fichier contient des informations pour pouvoir débuggé le programme.
Habituellement une fois terminé, juste avant livraison, le programme est compilé en mode Release. Dans ce cas je pense que ce fichier n'est plus généré.
A priori je dirais que tu n'as pas besoin de le copier.
---- Sevyc64 (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #
Tyrell2
Messages postés251Date d'inscriptionsamedi 19 novembre 2005StatutMembreDernière intervention 2 novembre 2010 18 déc. 2006 à 17:28
Bonsoir,
je cherche à ameliorer mon code (qui marche bien tel quel je le rappelle) mais j'y arrive pas tout seul donc je reviens ici :
mon but : plutot que de modifier le registre en lancant des fichiers .Reg à partir du nom du processeur,
j'essaye de le faire directement via le code mais rien ne se passe...
je cherche à modifier une valeur DWORD et voila où j'en suis : (je sais pas si je suis sur une mauvaise piste ou si j'ai oublié qlqchose . MERCI D'AVANCE)
Module
Module1
Sub
Main()
'recupère le chemin de la première clé pour lire le nom du processeur
Tyrell2
Messages postés251Date d'inscriptionsamedi 19 novembre 2005StatutMembreDernière intervention 2 novembre 2010 18 déc. 2006 à 18:23
je viens de m'apercevoir que je suis dans VB6\débutant alors qu'il y a une categorie VB.NET\débutant qui me concerne plus.
ya moyen de moyenner quelquechose pour deplacer ce sujet là bas ?
cs_casy
Messages postés7741Date d'inscriptionmercredi 1 septembre 2004StatutMembreDernière intervention24 septembre 201440 18 déc. 2006 à 19:42
Seul un admin peut le faire.
Revoie ta chaine d'ouverture de key2. Tu ne devrais pas avoir le dernier opensubkey("Start") je pense.
Ensuite revoie ce que tu fais dans ce code :
If InStr(chaine, "Intel") > 0 Then
Registry.LocalMachine.SetValue("chaine2", 1)
Else
Registry.LocalMachine.SetValue("chaine2", 4)
End If
Pour moi il est pas correct, car là tu créer une valeur nommée "chaine2" sous la clé LOCALMACHINE.
Je pense que toi tu souhaite plutot modifier la valeur de "Start".
Dans ce cas, il faudrait écrire : key2.SetValue("Start",1)
---- Sevyc64 (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #