Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

[VBScript] Charger une ruche pour changer un paramètre Default user

2 réponses
Avatar
Eric G.
Bonjour tout le monde,

Ca faisait un bail que j'étais venu vous embéter.
Je suis en train de faire un script pour modifier deux variables
d'environement dans le registre du Default User.
Je passe par un outil tiers qui s'appele REG.exe qui permet de charger la
ruche du NTUSER.DAT de ce profil.

Mon problème est que je tricote avec les espaces dans la ligne de commande
du shell.run :) (Et oui encore mes chr(34) qui merdouillent)
Je me suis inspiré d'un bout de script que m'avait dépanné Gilles mais sans
résultat positif. (pas d'erreur mais pas de ruche chargée)

========== Couic==========
Option Explicit

'Déclaration des variables
Dim oSh, Commande1, Commande2
Const defaultprofilepath = "C:\Documents and Settings\Default
User\NTUSER.DAT"

'Initialisation des Objets
Set oSh = WScript.CreateObject("WScript.Shell")

' Chargement de la ruche default user
Commande1 = "Cmd /c \\Serveur\Partage\Patchs\reg.exe Load" & " "& Chr (34) &
defaultprofilepath & Chr (34) & " " & "HKEY_USERS\User"
'Visu ligne de commande
msgbox Commande1 ,vbinformation,"chargement"

oSh.Run Commande1

'Modification du profil ouvert
oSh.RegWrite "HKU\User\Environment\TMP", "D:\TEMP", "REG_SZ"
oSh.Regwrite "HKU\User\Environment\TEMP", "D:\TEMP", "REG_EXPAND_SZ"

' Déchargement de la ruche default user
Commande2 = "Cmd /c \\Serveur\Partage\Patchs\reg.exe unLoad HKEY_USERS\User"
'Visu ligne de commande
msgbox commande2 ,vbinformation,"déchargement"

oSh.Run Commande2
' Fin
MsgBox "blablabla",vbinformation,"Mise à jour"
==========Couic=========

Mon problème réside dans le Command1.
La ligne de commande est simple : reg.exe load chemin_ntuser.dat nom_cle
De plus je sais pas si en VB on peut modifier les clefs REG_EXPAND_SZ.
Si par contre vous avez une methode plus simple, je suis preneur.

Merci d'avance
Eric Galais

2 réponses

Avatar
Gilles LAURENT
"Eric G." a écrit dans le message de
news:
| Bonjour tout le monde,

Bonjour,

| Ca faisait un bail que j'étais venu vous embéter.
| Je suis en train de faire un script pour modifier deux variables
| d'environement dans le registre du Default User.
| Je passe par un outil tiers qui s'appele REG.exe qui permet de
| charger la ruche du NTUSER.DAT de ce profil.
|
| Mon problème est que je tricote avec les espaces dans la ligne de
| commande du shell.run :) (Et oui encore mes chr(34) qui merdouillent)
| Je me suis inspiré d'un bout de script que m'avait dépanné Gilles
| mais sans résultat positif. (pas d'erreur mais pas de ruche chargée)
[...]

| Mon problème réside dans le Command1.
| La ligne de commande est simple : reg.exe load chemin_ntuser.dat
| nom_cle

Le problème vient du délai de chargement de la ruche du profil Default
User. Modifiez les lignes suivantes comme suit :

' on attend le chargement complet de la ruche Default User
oSh.Run Commande1,,True

' on modifie la ruche Default User via le map HKUUser
oSh.RegWrite "HKEY_USERSUserEnvironmentTMP", "D:TEMP", "REG_SZ"
oSh.Regwrite "HKEY_USERSUserEnvironmentTEMP", "D:TEMP",
"REG_EXPAND_SZ"

' on attend le déchargement complet de la ruche Default User
oSh.Run Commande2,,True

Note: La modification du registre sera prise en compte uniquement par
les nouveaux profils utilisateur. Est-ce bien ce que vous souhaitez ?

| De plus je sais pas si en VB on peut modifier les clefs REG_EXPAND_SZ.

Oui.
Seul le type REG_MULTI_SZ n'est pas supporté
Support partiel du type REG_BINARY

--
Gilles LAURENT
http://glsft.free.fr
Avatar
Eric Galais
[...]

Note: La modification du registre sera prise en compte uniquement par
les nouveaux profils utilisateur. Est-ce bien ce que vous souhaitez ?

| De plus je sais pas si en VB on peut modifier les clefs REG_EXPAND_SZ.

Oui.
Seul le type REG_MULTI_SZ n'est pas supporté
Support partiel du type REG_BINARY

--
Gilles LAURENT
http://glsft.free.fr




Grand merci Gilles, je vais tester çà de suite.
Je me focalise sur le "Default user" car ce script sera lancé par les
techniciens réseaux sur les nouvelles machines non personnalisées. (donc pas
de session user de créée)

Par contre il va falloir que je vois pour les autres profiles dans le cas ou
les sessions user sont déjà créées (machines déjà sur site ou oubli du patch
par un technicien).
Ca par contre j'ai pas commencé à voir la méthode.

Eric