jguinchard a écrit :Est-ce que tu pourrais poster tout ou partie du script au3 et la partie du batch qui concerne le problème pour qu'on regarde ?
Quand tu modifies le PATH, est-ce que tu es sûr qu'il contient le chemin vers regedit.exe ?
Finalement, je ne suis pas sûr d'avoir compris le but : est-ce que tu dois vraiment effectuer la modification dans les variables systèmes, ou est-ce que la variable sert uniquement dans le .bat ?
code dans mon fichier .au3
Code : Tout sélectionner
$result = RegWrite("HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment", "name", "REG_SZ", "value")
;EnvSet("CAELIB", RegRead("HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment", "CAELIB"))
EnvSet( "CAELIB", "C:\CAE\CAELIB" )
code dans le fichier .bat
exemple d'une cle qu'on veut creer dans le registre
si vous regardez la ligne de code dans le fichier .bat, vous remarquer qu'on sauvegarde cette ligne dans un fichier
Code : Tout sélectionner
echo [HKEY_LOCAL_MACHINE\SOFTWARE\rep\rep1\Simulations\%SHIP_FAMILY%\Links]>>%HOST_REG%
echo.>>%HOST_REG%
Et a la fin on lance cette commande
, pour ecrire tout ce qu'on a sauvegarder dans le fichier %HOST_REG% dans la base de registre.
maintenant je viens de retester mon script avec l'ajout de ces lignes dans le script
Code : Tout sélectionner
$result = RegWrite("HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment", "name", "REG_SZ", "value")
;EnvSet("name", RegRead("HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment", "name"))
EnvSet( "name", "value" )
mais ca ne fonctionne pas encore.
j'ai compiler mon fichier.au3 j'execute le ficheir exe bien sure. il ajoute les variables, il execute le fihcier bat avec
$var4 contient le chemin du fichier .bat que je veux executer avec les parametres.
mais ca me donne l'erreur suivante:
'regedit' n'est pas reconnu en tant que commande interne.
une fois je ferme mon exe qui est base sur des fenetre GUI cree avec autoit. je reexecute mon fichier exe tout marche bien.
je ne comprends pas pourquoi je dois ferme mon exe et le reexcuter pour que ca marche.