Problème de registre avec mon .reg

Résolu
j3r3my_ultra Messages postés 40 Date d'inscription   Statut Membre Dernière intervention   -  
j3r3my_ultra Messages postés 40 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

J'ai un petit soucis. Dans un .bat, j'appele le .reg suivant :

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\*\shell\PeaZip]
"SubCommands"="PeaZip.add2separate;PeaZip.add2separatesingle;PeaZip.ext2a;"
"MultiSelectModel"="player"
"Icon"="\"C:\\Program Files\\PeaZip\\peazip.exe\",0"

[HKEY_CLASSES_ROOT\*\shell\PeaZip\command]


Seul problème, mon registre ne change pas. Il affiche les clés suivantes :
- PeaZip.ext2here
- PeaZip.ext2folder
- PeaZip.ext2main
- PeaZip.add2separate
- PeaZip.add2separatezipmail
- PeaZip.ext2browsepath
- PeaZip.ext2browseasarchive

Quelqu'un peux m'expliquer pourquoi et m'aiderà rectifier mes erreurs?
Merci d'avance.
A voir également:

4 réponses

dg_belmontet Messages postés 320 Date d'inscription   Statut Membre Dernière intervention   128
 
Bonsoir,

Décidément le stage porte ses fruits....

Concernant votre PB, je suppose que vous changez la clé "Peazip" après qu'elle ait été créée par l'installation du package Peazip. Si la clé existe déjà, on ne peut pas la modifier par la suite avec un .reg et Regedit.exe (j'ai fait un test exprès pour vous.....). A l'installation, on retrouve bien les sous-clés que vous mentionnez après le code du .reg dans votre message et même si on exécute votre .reg par la suite, rien n'est modifié. En revanche si la clé n'existe pas, votre code fonctionne parfaitement.

Dans ce cas il faudrait d'abord dans votre batch supprimer la clé "Peazip" entièrement puis exécuter votre .reg avec vos valeurs spécifiques et là cela devrait fonctionner.
Pour ce faire, il faudrait pour le "delete d'une clé" utiliser un autre utilitaire comme "reg.exe" par exemple qui permet le delete entre autres. Il est situé dans \Windows\System32" du moins pour moi avec mon Windows7. Assurez-vous que tout cela est bien exécuté en tant qu'Administrateur. Pour la syntaxe, saisir : reg.exe /?

A suivre.

Cdlt.
1
j3r3my_ultra Messages postés 40 Date d'inscription   Statut Membre Dernière intervention   1
 
Merci du coup de main. Je vais tester ça.
0
dg_belmontet Messages postés 320 Date d'inscription   Statut Membre Dernière intervention   128
 
Dans le code de votre batch, une nouvelle fenêtre CMD est lancée en "minimize" pour exécuter l'installation du package Peazip. Mais ensuite et avant que l'installation ne soit terminée, le Regedit est lancé.... et il est bien exécuté mais en fin d'installation du package Peazip les clés sont remises à l'état d'origine, ce qui vous fait penser que Regedit n'est pas exécuté.

Voici ce qu'il faut mettre dans votre Batch (ajout d'une option WAIT pour attendre que l'instal de Peazip se termine avant d'exécuter la commande suivante) :

@echo off

start /b /min /wait peazip-plain-4.8.WINDOWS.exe /verysilent

regedit /s PeaZip.reg

exit /b 0


PS: On suppose que vous lancez le Batch alors que vous êtes bien positionné dans le bon répertoire où se trouve le package Peazip et le fichier .reg.

Cdlt
1
j3r3my_ultra Messages postés 40 Date d'inscription   Statut Membre Dernière intervention   1
 
Super! Merci. Je viens de tester, ça marche.
0
j3r3my_ultra Messages postés 40 Date d'inscription   Statut Membre Dernière intervention   1
 
Par contre, le fait de mettre le /wait laisse la fenêtre DOS ouverte pendant une période de 5 sec. Il y a pas moyen de de la faire disparaître complétement? Mon code devrait pourtant le faire. Je ne comprends pas.
0
dg_belmontet Messages postés 320 Date d'inscription   Statut Membre Dernière intervention   128
 
Effectivement, une fenêtre DOS reste affichée pendant quelques secondes et je ne pensais pas que cela était gênant... Elle reste ouverte tant que l'application PEAZIP n'a pas fini d'être installée (ceci est bien dû au /WAIT mais nécessaire car il corrige le PB du regedit.exe).

Si réellement c'est important pour vous, voici une solution qui fonctionne et on n'aperçoit une fenêtre DOS qu'une fraction de seconde...
Il faut créer un 1er batch qui sera celui appelé dans votre processus, exemple on l'appelera "Call.cmd" pour y mettre le code suivant :

@echo off

start /MIN instal_peazip.cmd

exit /b 0


NB: remarquez ici qu'il n'y a pas de /WAIT (surtout pas...), ainsi on appelle "instal_peazip.cmd" et on sort immédiatement et sans attendre que "instal_peazip.cmd" se termine.


Dans un autre batch "instal_peazip.cmd" qui sera appelé par Call.cmd, on mettra :

@echo off

start /WAIT /MIN peazip-plain-4.8.WINDOWS.exe /verysilent


start /WAIT /MIN regedit /s PeaZip.reg


exit /b 0



AInsi vous lancerez le batch "Call.cmd" et c'est tout...


Cela devrait vous convenir au niveau ergonomie de l'installation mais cela nécessite 2 batchs au lieu d'un. Je ne sais pas si vous testez le code retour "0" ?? car actuellement même si cela se passe mal pour une raison ou une autre vous aurez dans tous les cas un code "0".

Cordialement.
0
j3r3my_ultra Messages postés 40 Date d'inscription   Statut Membre Dernière intervention   1
 
Je viens d'effectuer les tests. Ca marche. Merci beaucoup pour votre aide.

Cordialement.
0
j3r3my_ultra Messages postés 40 Date d'inscription   Statut Membre Dernière intervention   1
 
Après vous avoir lu, j'ai réalisé un certain de nombre de test avoir de déterminer l'utilité du .reg. Le lancement du .reg modifie les options pour compresser les fichiers. Il n'a pas été nécessaire d'utiliser REG DELETE.

Désormais mon problème se situe dans mon fichier .bat.

@echo off
start /b /min peazip-plain-4.8.WINDOWS.exe /verysilent
regedit /s PeaZip.reg
exit /b 0

L'installation de PeaZip s'effectue correctement, mais le .reg n'exécute pas. Pouvez-vous me venir en aide pour qu'il marche.

Merci d'avance.
0
j3r3my_ultra Messages postés 40 Date d'inscription   Statut Membre Dernière intervention   1
 
Désolé de soliciter encore votre aide, mais d'après mon maître de stage, je suis à 97% de réussir ce qu'il demande. Les 3% manquant viennent lors de l'exécution du point .reg. Les options désirés sont correctement installées, mais dès que je fait un clic droit sur un fichier à compresser ou à décompresser l'icône de PeaZip disparait.

Il semblerait que les utilisateurs fonctionnent grâve à cette icône. En analysant le .reg, j'ai remarqué qu'une valeur 0 ou 1 pouvait être mise pour l'icône :

"Icon"="\"C:\\Program Files\\PeaZip\\peazip.exe\",0"

Je testé les deux et ça n'a pas marché. Mon probème vient-il de cette ligne ou d'autre part?

Merci d'avance pour votre aide.

Cordialement.
0
dg_belmontet Messages postés 320 Date d'inscription   Statut Membre Dernière intervention   128
 
Bonjour,

J'ai essayé de reproduire votre incident, impossible sur mon environnement et cela fonctionne très bien (pas de suppression de l'icône dans le bureau). Il est fort probable qu'il y ait une intéraction dans vos environnements et pour ma part je suis en Win7-Home familiale qui est différent d'un environnement dit pour professionnel. Peut-être utilisez-vous XP et bien sur d'autres applications différentes des miennes ?

Concernant la ligne pour l'icône dans le .reg cela n'a rien à voir avec votre problème d'icône supprimée dans le bureau de l'utilisateur. En fait cela fait référence à une petite icône asscociée au lancement de Peazip dans un menu contextuel (clic droit sur un fichier par exemple).

Du fait que je n'ai pas le PB, je ne sais trop quoi vous proposer comme solution car je pense qu'il s'agit bel et bien d'un bug dans Peazip mais associé à votre environnement. Faites un test par exemple en protégeant l'icône en "Lecture seulement" et voir ce qui se passe.... mais c'est une solution pas propre car si on veut désinstaler l'application, cette icône risque de rester dans le bureau.

Faites aussi des tests en installant manuellement Peazip par défaut et aussi en configuration manuelle (on choisit dans ce cas les options) et voir si l'icône disparaît à nouveau.

Essayez aussi de me donner plus de détails sur la manière dont cela se produit et sur votre environnement.


Cdlt
0
j3r3my_ultra Messages postés 40 Date d'inscription   Statut Membre Dernière intervention   1
 
Je n'arrive pas à comprendre. Avant votre réponse, j'avais déjà désinstaller, réinstaller PeaZip manuellement sans le .reg. Lorsque je faisais clic droit sur un fichier et que je mettais le curseur sur PeaZip, l'icône était toujours là. Ensuite, j'ai exécuté le .reg qui c'est installé sans problème et 'ai refais la manipulation. L'incône de PeaZip avait laissé place à une autre icône.

J'ai aussi remarqué que ce problème apparaissait principalement l'optionlorsque je voulais compresser un fichier.

J'espère que celà va vous éclairer.

Cordialement.
0
dg_belmontet Messages postés 320 Date d'inscription   Statut Membre Dernière intervention   128
 
Il me manque des infos de votre part... Quand vous dites que l'icône disparaît c'est quelle icône ? est-ce celle mise dans le bureau de l'utilisateur ou celle affichée (en tout petit) dans le menu contextuel à côté de Peazip lorsqu'on fait un clic droit sur un fichier à compresser ou décomppresser par exemple ?

La ligne ICON dans le .reg doit parfaitement être en accord avec le répertoire d'installation de Peazip. En effet, je suis en Win7 et Peazip s'installe dans
C:\Program files (x86)\Peazip et je suis obligé de corriger votre .reg pour mettre ce répertoire car vous avez mis C:\Program Files\Peazip (qui à mon avis est pour XP). Si ces 2 chemins ne correspondent pas au moment de la première exécution de Peazip on va perdre l'icône d'origine et il y aura la place une icône par défaut ou pas du tout. Est-cela vos symptômes ?

A suivre.
0
j3r3my_ultra Messages postés 40 Date d'inscription   Statut Membre Dernière intervention   1
 
Il s'agit de la petite icône dans le menu contextuel. Je suis sur une machine W7 et j'ai réussi à résoudre mon problème. J'ai enlevé de mon .reg ces deux lignes:

"MultiSelectModel"="player"
"Icon"="\"C:\\Program Files\\PeaZip\\peazip.exe\",0"


Désormais seulsles options sont modifiées et donc il n'y a aucune influence sur les icônes de mon menu. Je viens de faire un test sur un poste utilisateur et ça marche.

Merci de votre attention à toutes mes requêtes.

Cordialement.
0