Modification de valeur dans de registre
Fermé
BRRG
Messages postés
1080
Date d'inscription
lundi 31 août 2015
Statut
Membre
Dernière intervention
26 juillet 2024
-
Modifié le 8 nov. 2020 à 18:19
BRRG Messages postés 1080 Date d'inscription lundi 31 août 2015 Statut Membre Dernière intervention 26 juillet 2024 - 10 nov. 2020 à 11:30
BRRG Messages postés 1080 Date d'inscription lundi 31 août 2015 Statut Membre Dernière intervention 26 juillet 2024 - 10 nov. 2020 à 11:30
A voir également:
- Modification de valeur dans de registre
- Registre windows - Guide
- Suivi de modification word - Guide
- Logiciel modification pdf gratuit - Guide
- Liste de valeur excel - Guide
1 réponse
f894009
Messages postés
17205
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
19 octobre 2024
1 709
9 nov. 2020 à 07:24
9 nov. 2020 à 07:24
Bonjour,
Avez vous essayez avec on error... en commentaire
Avez vous essayez avec on error... en commentaire
9 nov. 2020 à 09:24
9 nov. 2020 à 12:21
Tout a fait Thierry. Avez vous mis en commentaire
pour EnableUA
Pourquoi le faire par vbs?
9 nov. 2020 à 13:39
'''' MODIFICATION VALEUR DANS LE REGISTRE ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'PAR LE REGISTRE WINDOWS = Le registre de Windows contient les informations de configuration de Windows.
'Une clé EnableUA se trouve dans HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\System permet d'indiquer si l'UAC est activé 'ou non. Lorsque EnableUA est à 1, l'UAC est actif, à 0 l'UAC est désactivé.
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Option Explicit
Dim bKey, WshShell, pKey
'*** Déclaration des variables
Dim ObjetRegedit
'*** Permet de continuer le script même s'il y a une erreur
'On Error Resume Next
'*** Definition du contenu de la variable
'Set ObjetRegedit = CreateObject("WScript.Shell")
'Set WshShell = WScript.CreateObject("WScript.Shell")
'*** Definition du contenu de la variable "CleRegistre"
CleRegistre = WshShell.RegRead ("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\EnableUA")
'*** Lecture de la clé de registre et si la valeur est égale à "0"
'*** Action si "La clé est égale à 0" passer au rajout de la ligne dans le fichier host sinon si "La clé est égale à 1", supprimer la clé puis créer la clé avec la valeur 0
'If CleRegistre = "1" then
'*** Suppression de la clé de registre
WshShell.RegDelete "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\EnableUA"
'*** Création des valeurs et son type "REG_DWORD".
WshShell.RegWrite "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\EnableUA", "0", "REG_DWORD"
End if
On Error GoTo 0
'*** Destruction des objets
Set ObjetRegedit = Nothing
'''' AJOUT VALEUR DANS HOST ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Const ForReading = 1, ForWriting = 2, ForAppending = 8, ReadOnly = 1
'Line to be appended to the hosts file
Dim hostsNewLine
hostsNewLine = " 10.8.0.1 X-DSM"
If Not WScript.Arguments.Named.Exists("elevate") Then
CreateObject("Shell.Application").ShellExecute WScript.FullName _
, WScript.ScriptFullName & " /elevate", "", "runas", 1
WScript.Quit
End If
Set fso = CreateObject("Scripting.FileSystemObject")
Set WshShell=CreateObject("WScript.Shell")
WinDir =WshShell.ExpandEnvironmentStrings("%WinDir%")
HostsFile = WinDir & "\System32\Drivers\etc\Hosts"
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.OpenTextFile(HostsFile, ForReading)
Do Until objFile.AtEndOfStream
If InStr (objFile.ReadLine, hostsNewLine) <> 0 Then
WScript.Quit
End If
i = i + 1
Loop
objFile.Close
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.GetFile(HostsFile)
If objFile.Attributes AND ReadOnly Then
objFile.Attributes = objFile.Attributes XOR ReadOnly
End If
Set filetxt = fso.OpenTextFile(HostsFile, ForAppending, True)
filetxt.WriteLine(vbNewLine & hostsNewLine)
filetxt.Close
'''' REINITIALISATION VALEUR DANS LE REGISTRE ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'PAR LE REGISTRE WINDOWS = Le registre de Windows contient les informations de configuration de Windows.
'Une clé EnableUA se trouve dans HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\System permet d'indiquer si l'UAC est activé 'ou non. Lorsque EnableUA est à 1, l'UAC est actif, à 0 l'UAC est désactivé.
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'*** Permet de continuer le script même s'il y a une erreur
'On Error Resume Next
'*** Definition du contenu de la variable
Set ObjetRegedit = CreateObject("WScript.Shell")
Set WshShell = WScript.CreateObject("WScript.Shell")
'*** Definition du contenu de la variable "CleRegistre"
CleRegistre = WshShell.RegRead ("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\EnableUA")
'*** Lecture de la clé de registre et si la valeur est égale à "0"
'*** Action si "La clé est égale à 1" passer à la suite du script sinon si "La clé est égale à 0", supprimer la clé puis créer la clé avec la valeur 1
If CleRegistre = "0" then
'*** Suppression de la clé de registre
WshShell.RegDelete "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\EnableUA"
'*** Création des valeurs et son type "REG_DWORD".
WshShell.RegWrite "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\EnableUA", "1", "REG_DWORD"
End if
On Error GoTo 0
'*** Destruction des objets
Set ObjetRegedit = Nothing
'*** Quitter le script
WScript.Quit
Pour vous est ce que le script permet bien de désactiver l'UAC via le registre pour ensuite rajouter une ligne dans le fichier host pour en réactiver l'UAC.
J'ai fais en vbs pour la simple raison que je me suis lancé avec depuis chose et j'ai trouvé en vbs donc maintentant je continue en vbs.
9 nov. 2020 à 14:09
9 nov. 2020 à 20:05
Elle fonctionne mais ce n'est pas du vbscript.