[Registre] regedit et regedt32 vraiment pas documenté :((

regedit et regedt32 vraiment pas documenté :(( [Registre] - Windows & Software

Marsh Posté le 28-05-2002 à 10:31:58    

Salut!
Voilà le topo, ça fait une bonne semaine que je me bats avec ce p*tain de registre...
Actuellement j'ai trouvé 2 commutateur deligne de commande pour regedit:
/s qui me permet d'importer une fichier reg de manière "silencieuse"
/equi me permet d'exporter un fichier reg de manière "silencieuse".
 
Or je ne sais pas comment on fait pour "lire" le contenu d une clée.Je ne sais pas y éffectué une recherche et en extraire des informations :(
 
J'ai éssayé Scanreg qui permet d'éffectuer divers opération dont une fonction de recherche (j'ai un peu de mal à l exploité :( )
les différents commutateur disponible pour scanreg (no exhaustif)
Vérification du Registre Windows
 
Syntaxe : SCANREG [/<option>]
 
<option>
 ?          : affiche les options.
 BACKUP     : Effectue une sauvegarde du Registre et des fichiers de
              configuration du système.
 RESTORE    : Choisissez la sauvegarde à restaurer.
 FIX        : Répare le Registre.
 COMMENT="<commentaire>"
            : Ajoute le commentaire spécifié dans le fichier CAB durant
              la sauvegarde.

 
Gracieusement offert par  :jap: jcdenton2  :jap:  
En gros ce que je recherche:
 
le moyen d éffacer des clefs par ligne de commande
le moyen de "lire" le contenu de clefs, afin de l envoyé dans une variable.
le moyen d extraire des information de recherches de manière exploitable par un langage de script.
le moyen de créé un clef.
Les commutateurs et switch utilisés par scanreg.
 
le tout en ligne de commande :) :sweat:  :benetton:  
 
Si vous utilisez un prog pour éffectué des routine sur le registre en ligne de commande, je suis preneur.
 
je suis sûr qu il y a d autre moyen que les fichiers reg pour éditer le registre..je ne crois pas possible que cela soit le seul moyen, c est bcp trop limitant.Simplement j ai beau cherché, je ne trouve pas ces infos  :pt1cable:  et vu que j 'ai bcp de programmes qui vont d abord inspecté la base vont de s installé, et ensuite qui y cré des clefs afin d en mémorisé l installation.
Bon moi je me base bcp sur le registre pour administré :p  et là je suis coincé.
 
Si je suis pas clair dites le moi (il est trés tôt ce matin et dans mon cerveau la brume commence juste à se dissipée ;) )
 
Pius ce que je déplore aussi c'est que la documentation concernant des deux utilitaires se limite au GUI :(

 

[jfdsdjhfuetppo]--Message édité par CATALINA le 28-05-2002 à 11:37:37--[/jfdsdjhfuetppo]


---------------
Twitch YoutubeGaming Hitbox à toute, maooow!
Reply

Marsh Posté le 28-05-2002 à 10:31:58   

Reply

Marsh Posté le 28-05-2002 à 10:46:29    

Bon tu t'attaque à un gros problème : microsoft n'a effectivement presque rien fournit pour bidouiller la BDR automatiquement (excepté l'API, mais pour ça faut programmer).
 
Je te propose d'aller voir là :
http://www.presence-pc.com/sqlforu [...] h=&subcat=
 
où j'ai expliqué à qq'un comment supprimer une clé ou une valeur. Il y a également moyen d'ajouter une clé ou une valeur avec ces fameux INF
 
Sinon, effectivement faut trouver un programme spécifiquement dédié à l'édition de la BDR en mode ligne de commande.

Reply

Marsh Posté le 28-05-2002 à 11:01:50    

:jap:
Coethium-->
C'est déjà un bon pas dans ce sens, je vais testé pour voir si j ai bien intègré le principe.
" (excepté l'API, mais pour ça faut programmer). " c'est long? tu crois qu en 6 mois j arriveraia à apprendre assez de rudiments pour le faire ?


---------------
Twitch YoutubeGaming Hitbox à toute, maooow!
Reply

Marsh Posté le 28-05-2002 à 11:05:21    

Pour faire ça en script, je te propose le KiXtart

Reply

Marsh Posté le 28-05-2002 à 11:05:38    

les commutateurs de scanreg:
scanreg /?


---------------
Infestation Xenomorphe détectée, nombreux mouvements...
Reply

Marsh Posté le 28-05-2002 à 11:12:30    

jcdenton2 > impossible quand win est lancé, pour ça faut être en mode msdos. Et comme le mode dos n'existe plus avec XP...
 
catalina > si tu est motivé, oui tu peux apprendre rapidement à programmer. Dans ce cas, je te conseille vivement Delphi 6 PE si c'est pour une utilisation personnelle il est gratuit (PE = Personnal Edition). De plus je maîtrise particiulièrement ce langage, donc tu pourras me demander conseil (ceci dit, si tu chosit un autre langage, d'autres programeurs pouront t'aider !)

Reply

Marsh Posté le 28-05-2002 à 11:19:14    

C vrai je l'ai fait sous 98, et apparement sous xp, scanreg n'existe même pas... en tout cas:
C:\WINDOWS>scanreg /?
 
Vérification du Registre Windows
 
Syntaxe : SCANREG [/<option>]
 
<option>
  ?          : affiche les options.
  BACKUP     : Effectue une sauvegarde du Registre et des fichiers de
               configuration du système.
  RESTORE    : Choisissez la sauvegarde à restaurer.
  FIX        : Répare le Registre.
  COMMENT="<commentaire>"
             : Ajoute le commentaire spécifié dans le fichier CAB durant
               la sauvegarde.


---------------
Infestation Xenomorphe détectée, nombreux mouvements...
Reply

Marsh Posté le 28-05-2002 à 11:21:52    

Coethium-->
 [:plat00n] ben je vais m'y mettre je profite du calme pour apprendre un max de truc!
 
jcdenton2--> tu pourrais faire un petit copié collé
ou alors si tu enas le temps le plus simple:
tu fais
C:\scanreg /?>>scninfo.txt
ensuite tu ouvres les fichier txt créé (normalement à la racine de c:\ ) et tu postes un Copier/coller :jap:
si tu as le temps :)
come cela je le reprends dans le premier post!!! :hap:
 
-->deltafox
pour le moment je suis en train d éssayé de maîtriser AutoIt, ensuite je passe à Kixtart, mais quelles fonctions peut-il éffectué?

Reply

Marsh Posté le 28-05-2002 à 11:26:32    

ayé c fait...
up !


---------------
Infestation Xenomorphe détectée, nombreux mouvements...
Reply

Marsh Posté le 28-05-2002 à 11:26:55    

OK, bon alors, si tu te lance dans la prog (et c'est vraiment passionnant) alors contacte moi plutot par mail ( coethium@yahoo.fr ) parce que je ne regarde pas tous les messages des forums... !  :)

Reply

Marsh Posté le 28-05-2002 à 11:26:55   

Reply

Marsh Posté le 28-05-2002 à 11:35:32    

jcdenton2--> grillaid :jap: :P !!!
 
Coethium--> c'est cool!! :hap:
là j ai déjà pompé le SDK de win installer (m a bcp déçu :( )
je vais le choper ce Delphi :D
 
j'update vite le premier poste. mais concernant scanreg il semblerais qu il y ai plus de commutateur :??: j'ai vu plusieur ligne de commande, mais je n'ai pas testé faute de temps et de documentation :(

Reply

Marsh Posté le 28-05-2002 à 14:14:04    

Alors là je suis sur le cul :heink:  
je suis sous Win2kPro
je viens de faire le test suivant:
regedit /e C:\Loiku\test\raa.reg HKEY_LOCAL_MACHINE\SOFTWARE\Sophos
en gros j exporte une branche du registre sous forme d un fichier reg vers mon repértoire de test.
Ensuite je l exporte sous forme de fichier txt
regedit /e C:\Loiku\test\raa.txt HKEY_LOCAL_MACHINE\SOFTWARE\Sophos
quand je compare mes deux fichiers, qui sont strictement identiques hormis l extension (heureusement (sic!) )
ils pèsent tout deux 35KO
jusque là tout vas bien :)  cependant sont quand même assez lourd pour des petis fichiers txt.
 
ensuite je fais la chose suivante
j'ouvre raa.reg avec notepad et je l enregistre sous 1.txt
et là :eek: il ne pèse plus que 17Ko
 
je me demande bien ce qui l'a fait s'amaigir ainsi  :??:  :pt1cable:  
de plus... en le renommant en .reg il s inscrit sans aucun problème dans le registre  :benetton:  :pt1cable:  :cry:  
là je pige plus du tout.
 
En fait j avais fait un script qui me lançait regedit en ligne de commande, puis un autre afin de récupéré le contenu du reg dans une variable.. cependant ça foirait... mais,  :heink:  quand j en fait un copier coller et que je le fait "maigrir" le script l intègre sans problèmes dans la variable  :??:  :pt1cable:  :sweat:  
 
là je sèche  :(


---------------
Twitch YoutubeGaming Hitbox à toute, maooow!
Reply

Marsh Posté le 28-05-2002 à 14:30:48    

En fait je viens de trouver... c'est éxactement la même taille que si j exporte dans le format de registre Win9x/nt .
Bon je ne sais pas encore ce qui change, ni comment le paramètré en ligne de commande, mais je finirai bien apr trouver! :)


---------------
Twitch YoutubeGaming Hitbox à toute, maooow!
Reply

Marsh Posté le 28-05-2002 à 14:47:17    

les fichiers .REG n'ont rien de magiques ou de tordu dans leur données : ce sont les fichiers textes tout à fait standard donc c'est normal que l'exportation génère deux fichiers identiques (l'extention, il s'en bat les couilles regedit !)
 
Quand tu dis qu'ils sont lourds, ben j'en conclu que la clé que tu exporte (Sophos) possède beaucoup de données, tout simplement !
 
Par contre l'amaigrissement... ça c'est bizzare !!! T'aurais pas plutot fait une erreur de manip qui aurait supprimée des données ?

Reply

Marsh Posté le 28-05-2002 à 14:51:19    

non, l amaigrissemnt est normal:
apparement les fichier reg sous 2k sont plus lourd (regedit5)
alors que ceux générés sous 9x ou nt4 plus léger (regedit4)
apparement lorsque l on génére un reg avec notepad on ne peux créé que des fichier reg de type regedit4 (j'ai testé ;) )
cependant je ne sais pas ce qui saute :??:

Reply

Marsh Posté le 28-05-2002 à 15:00:17    

Par pure curiosité tu pourrais m'envoyer les deux fichiers ? (coethium@yahoo.fr)
 
J'aimerais trouver où sont les différences ;)

Reply

Marsh Posté le 28-05-2002 à 15:07:50    

Ne serait ce pas parce que Regedit5 produit un fichier unicode alors que Regedit4 produit de l'ANSI ?

Reply

Marsh Posté le 28-05-2002 à 15:13:23    

Exact Guru, je viens de vérifier ton hypothèse ! Félicitation  :jap:

Reply

Marsh Posté le 28-05-2002 à 15:14:12    

fichier envoyés!
----edit----
:lol:
regrillaid :P

 

[jfdsdjhfuetppo]--Message édité par CATALINA le 28-05-2002 à 15:14:53--[/jfdsdjhfuetppo]

Reply

Marsh Posté le 28-05-2002 à 15:25:41    

Remerciements répondus  :hap:  
(Avec l'explication donnée par Guru) ;)

Reply

Marsh Posté le 28-05-2002 à 15:52:22    

une autre option de scanreg non documentée :
 
scanreg /opt  
censé optimiser le registre (comment, bonne question) à utiliser avec précaution, m'a déjà cassé ma base une fois avec Win98SE


---------------
Celui qui pose une question est idiot 5 minutes. Celui qui n'en pose pas le reste toute sa vie. |  Membre du grand complot pharmaceutico-médico-scientifico-judéo-maçonnique.
Reply

Marsh Posté le 28-05-2002 à 15:59:40    

La base de registre est est une base de données (à sa manière) donc à force de créer/supprimer des clés on se retrouve avec des "trous" dans le BDR (elle se fragmente).
 
L'option /OPT permet donc de réorganiser la BDR afin quelle n'aie plus de trous (en gros, ça la défragmente).
 
Du coup, elle est moins conséquente, et prend moins de place en mémoire !!! (Car les trous sont aussi chargés en mémoire)

Reply

Marsh Posté le 29-05-2002 à 20:33:58    

Catalina a écrit :
>le moyen d extraire des information de recherches de manière exploitable par un langage de script.
 
Salut à tous. Je suis sous Win98 et j'ai constaté que via le Windows ShellScript ou Java, il y a moyen d'accéder au registre et de faire tous les manips.
J'ai un répertoire Windows\Samples\wsh qui contient des fichiers à l'extension vbs ou js mais je sais qu'on peut aussi créer des .wsh. Ces fichiers sont fournis par MS en standard sous Win98.
Je vous colle une partie du registry.vbs (c'est un visual basic script apparemment)
 
' Cet exemple montre comment écrire/supprimer des données à partir du Registre.  
' ********************************************************************************
' *
' * Méthodes relatives au Registre.
' *
 
Dim WSHShell
Set WSHShell = WScript.CreateObject("WScript.Shell" )
 
WSHShell.Popup "Création de la clé HKCU\MyRegKey avec la valeur 'Top level key'"
WSHShell.RegWrite "HKCU\MyRegKey\", "Top level key"
 
WSHShell.Popup "Création de la clé HKCU\MyRegKey\Entry avec la valeur 'Second level key'"
WSHShell.RegWrite "HKCU\MyRegKey\Entry\", "Second level key"
 
WSHShell.Popup "Paramétrage de la valeur de HKCU\MyRegKey\Value à REG_SZ 1"
WSHShell.RegWrite "HKCU\MyRegKey\Value", 1
 
WSHShell.Popup "Paramétrage de la valeur de HKCU\MyRegKey\Entry à REG_SZ 2"
WSHShell.RegWrite "HKCU\MyRegKey\Entry", 2, "REG_DWORD"
 
WSHShell.Popup "Paramétrage de la valeur de HKCU\MyRegKey\Entry\Value1 à REG_SZ 3"
WSHShell.RegWrite "HKCU\MyRegKey\Entry\Value1", 3, "REG_BINARY"
 
WSHShell.Popup "Suppression de la valeur HKCU\MyRegKey\Entry\Value1"
WSHShell.RegDelete "HKCU\MyRegKey\Entry\Value1"
 
WSHShell.Popup "Suppression de la clé HKCU\MyRegKey\Entry"
WSHShell.RegDelete "HKCU\MyRegKey\Entry\"
 
WSHShell.Popup "Suppression de la clé HKCU\MyRegKey"
WSHShell.RegDelete "HKCU\MyRegKey\"
 
J'ai l'impression que c'est encore assez simple à utiliser, c'est peut-être pas la peine d'apprendre à programmer un nouveau langage? Je crois que "ILOVEYOU" a été écrit avec VBscript mais on peut aussi faire des choses constructives.
 
Sinon, je suis d'accord avec ta remarque sur le peu de documentation de la BdR, ça fait partie de l'écran de fumée que MS utilise pour masquer les imperfections. J'ai constaté que de nombreuses clés finissent par être vérolées pour des causes diverses (écran bleu, panne de courant, etc.) et qu'elles provoquent alors des erreurs ou qu'elles déconnent. Il y a par exemple [HKEY_USERS\.DEFAULT\Software\Microsoft\Windows\CurrentVersion\Explorer\StreamMRU], elle est censée stocker la position d'une série de fenêtres, de manière à ce qu'on retrouve les programmes à la même "taille" lorsqu'on les rouvre. Cette clé sous Win98 devrait contenir au maximum 28 entrées mais il arrive qu'il y en ait 100, voire même plus. C'est pas grave en soi, sauf que ça provoque parfois des erreurs dans explorer.exe. C'est dans la MSKb qu'ils en parlent et la solution est empirique une fois de plus, supprimer la clé StreamMRU et elle sera recréée. Voilà la preuve que MS a de bonnes idées mais à l'usage, c'est le bordel dans le registre. Imagine le newbie qui a une erreur dans explorer.exe, il faut déjà qu'il trouve le message dans la MSkb et il doit alors bidouiller le registre pour réparer une erreur de conception de Windows. C'est comme si mon garagiste me disait, "suite à une imperfection sur les chaînes de montage, je vous demande d'aller sous votre voiture et de remplacer telle pièce". C'est absurde.
Dans mon cas, cette clé contenait des références à des programmes désinstallés depuis longtemps, c'est grâce à Windows Commander que je l'ai vu car la clé étant stockée en hexa, une recherche dans Regedit (GUI) ne me montrait pas ce que WC me montrait lorsque je visualise system.dat ou user.dat. WC a une option pour afficher côte-à-côte l'hexa et la représentation lisible.
StreamMRU n'est qu'un exemple, j'en ai d'autres ou la réponse de MS est "supprimez la clé et redémarrez le PC".
Je trouve qu'ils devraient fournir un utilitaire qui validerait l'intégrité de toutes les clés du registre liées à Windows et qui donnerait alors un rapport détaillé avec les actions à prendre. Mais comme dirait l'autre "même pas en rêve". Ce n'est pas Regclean ou Regcleaner qui nous aidera dans les cas que j'évoque.
 
Pierre.

 

[jfdsdjhfuetppo]--Message édité par pgriffet le 30-05-2002 à 19:12:27--[/jfdsdjhfuetppo]

Reply

Marsh Posté le 30-05-2002 à 19:15:39    

:hello:

Reply

Marsh Posté le 30-05-2002 à 23:06:02    

pgriffet a écrit a écrit :

:hello:  




:hello: !
 
 :jap:  voilà des reply comme je les adores!! [:halm]  
 
t'inquiète pas je ne laisse pas mourir le post (j'éssais de trouver une heure par jour pour bosser :love: Delphi! :love:)
c'est vraiment pas évident  :benetton:  
 
j'ai trois projets (pourrais pas les mener à bien @job,, là j'ai le méàga coup de bourre  :sweat: )
créé un petit programme (même genre de license que Autoit :) ) permettant de réaliser certaines fonction de régédit, mais en ligne de commandes (pour cela j'aurais besoin d un max d info  :jap:  )
Un autre ressemblant à PowerBatch (en bcp plus sommaire pour débuter) afin de bénéficier d un sode des couleur facilitant la création de scripts plus avancé (et de les relire) et évitant les omissions.
Et finalement un autre permettant de signaler (visuel et sonore) le No de l appelant) sur le pc depuis une carte  modem isdn
 
sinon concernat VBS si tu connais  l'équivalent de Delphi 6 PE pour le VBS je suis preneur (quoique là ça va vraiment faire bcp de choses en même temps... m'en fout: j ai pas peur!! ) [:lapinnoir]  
 
j'ai pas bcp fait progresser la thread mais je suis sûr que d ici quelques semaine on disposera de bonnes bases et de solutions pertinentes!!!
 
bonne soirée et bon W_E (pense pas pouvoir poster avant lundi :( )
 :hello:


---------------
Twitch YoutubeGaming Hitbox à toute, maooow!
Reply

Marsh Posté le 31-05-2002 à 21:30:40    

Pareil : difficile avant Lundi pour moi. Là j'vais pris 3 jours de congés c pour ça que j'ai pas donné de news. Je viens ce soir de faire un petit tour, mais je réactiverai mes neurones Lundi :D

Reply

Marsh Posté le 31-05-2002 à 21:41:08    

peut etre ici

Reply

Marsh Posté le 03-06-2002 à 09:55:55    

Qq infos pour ton petit programme regedit en ligne de commande.
 
* Delphi génère du code 32 bits, donc un programme qui s'éxecute en ligne de commande ne peut fonctionner que dans une fenêtre DOS (pas en DOS pur).
 
* Regarde l'aide de l'objet TRegister : c'est l'objet qui permet d'accéder à la BDR
 
* Regarde l'aide des fonctions ParamCount et ParamStr ; elles te permettent respectivement de connaitre de nombre et la valeurs des paramètres passés en ligne de commande.
 
* Pour les importations/exportations de clés, ça me parait plus intelligent d'utiliser les options de regedit ; pour pouvoir appeler un programme à partir d'une appli Delphi, regarde l'aide de la fonction ShellExecute (API Windows -> aide en anglais)
 
* Bon courage, et n'hésites pas à demander plus d'infos
 
PS: Il serait peut-être plus adéquat de créer un nouveau post dans la section programmation, non ?

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed