Modification

Résolu/Fermé
Jordi.D Messages postés 51 Date d'inscription vendredi 11 janvier 2019 Statut Membre Dernière intervention 8 février 2019 - 16 janv. 2019 à 20:15
 Jordi.D - 18 janv. 2019 à 01:38
Bonsoir a tous
J'aurais besoin d'aide s'il vous plaît donc j'explique mon problème.
J'ai un fichier *.reg il faut que je modifie N fois la valeur contenu dans le fichier car il dupliquer à chaque fois ( On connaît le numéro de la ligne)

Contenu du fichier:
"; The RegSave Utility created this file
; This utility was written by Paul Hurford, Symbol EMEA TS
; You use the utility at your own risk
;
; Template File : \Application\RegSave.Reg
; Program Version : 2.20.01 May xx xxx
; File created 1/11/2003 00:27:58
;

[HKEY_LOCAL_MACHINE\Ident]
"Name"="BAM201"

Il faut que je modifie le "BAM201" suivant une suite logique de la duplication d'un fichier
Ex si mon fichier Ce nomme V206
La ligne "Name"="BAM206" ainsi de suite

2 réponses

jordane45 Messages postés 38392 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 23 janvier 2025 4 731
16 janv. 2019 à 21:20
Re bonjour,


J'ai un fichier *.reg il faut que je modifie N fois la valeur contenu dans le fichier car il dupliquer à chaque fois ( On connaît le numéro de la ligne)

J'ai un doute sur ta question....

Tu dis avoir 1 Fichier
Et que la ligne à modifier (dont tu connais le numéro) est dupliquée ....
Seulement, dans l'exemple que tu donnes de ton fichier.. il n'y a qu'une seule ligne...

Donc.. soit tu as plusieurs fichiers
Soit l'exemple que tu donnes est incomplet...


Rappelles toi ce que je t'ai dit dans ta précédente discussion au sujet de la clarté de tes explications....
Merci donc de préciser exactement ce qu'il en est et de donner un exemple "complet"

0
jordane45 Messages postés 38392 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 23 janvier 2025 4 731
16 janv. 2019 à 21:22
EDIT : en relisant ta question.. tu parles du fichier qui est dupliqué.
Donc tu as plusieurs fichiers..

Ok.. par contre ils se trouvent tous dans le même dossier ?
Les fichiers ont tous des noms de la même forme ? Juste le chiffre qui change à la fin ?
0
Jordi.D Messages postés 51 Date d'inscription vendredi 11 janvier 2019 Statut Membre Dernière intervention 8 février 2019
17 janv. 2019 à 01:20
Re bonjour
En effet c'est un dossier qui est dupliquer a chaque fois qui contient le fichier *.reg
Par exemple
-TestN15
-TestN16 etc
le fichier *.reg est contenue dans chaque dossier et il doit " corresponde on numéro du dossier" donc ici
Name =bam15 et 16
0
jordane45 Messages postés 38392 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 23 janvier 2025 4 731 > Jordi.D Messages postés 51 Date d'inscription vendredi 11 janvier 2019 Statut Membre Dernière intervention 8 février 2019
17 janv. 2019 à 09:13
Donc ce n'est pas plusieurs lignes dans un fichier
Ce n'est pas non plus plusieurs fichiers dans un dossier
Maintenant c'est plusieurs dossiers qui contiennent chacun un fichier ?
C'est bien ça ?

Et tous les dossiers se nomment de la même manière hormis le chiffre à la fin ?
Le fichier reg à l'intérieur de ce dossier a comme nom *.reg ?? bizarre que l'étoile soit autorisée dans le nom du fichier...

Donc :
Tu peux faire un script qui récupère la liste des dossiers
Puis faire une boucle sur cette liste
dans la boucle :
récupérer le nom du dossier
extraire, à l'aide d'une regex, le numéro qui se trouve dans le nom
en t'inspirant du script que je t'ai donné pour la modification de ligne dans ta précédente question, procéder au renommage (il faut un peut le modifier pour retirer les msgbox par exemple ) de la variable dans le fichier .reg
puis on passe au dossier suivant...



En complément :

Exemple de regex :
str = "TestN15"
Set RegEx = CreateObject("vbscript.regexp") 
RegEx.Pattern = "[^\d]"
RegEx.IgnoreCase = True 
RegEx.Global = True 
numStr=RegEx.Replace(str, "") 
msgbox numStr

incrémenter une variable
0
jordane45 Messages postés 38392 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 23 janvier 2025 4 731
17 janv. 2019 à 09:32
Pour récupérer la liste des dossiers :
  folders = getFolders("c:\")
  for each dossier in folders
    'ici tu code le traitement ..
	'...
	' par exemple .. la récupération du numéro du dossier :
              Set RegEx = CreateObject("vbscript.regexp") 
               RegEx.Pattern = "[^\d]"
              RegEx.IgnoreCase = True 
              RegEx.Global = True 
              numStr=RegEx.Replace(dossier, "") 
              msgbox numStr
	
	
	
	' fin de la boucle sur les dossiers
  next



function getFolders(directory)
	Dim arr1()
	Dim folder
	Dim fsoFolder
	Dim subfolders
	Dim i
	
	Set fsoFolder = CreateObject("Scripting.FileSystemObject")
    Set folder = fsoFolder.GetFolder(directory)
    Set subfolders = folder.SubFolders
	
	i = 0
	for each objFolder in subfolders
      REDIM PRESERVE arr1(i+1)		
      arr1(i) = objFolder.Name
      i = i+ 1
      
    next
	getFolders = arr1
End Function



Je te laisse coder le reste
0
Jordi.D Messages postés 51 Date d'inscription vendredi 11 janvier 2019 Statut Membre Dernière intervention 8 février 2019
17 janv. 2019 à 15:13
Salut
Donc si je comprends bien y'a un Script pour récupéra la valeur de tous les dossier et l'autre pour pouvoir changer le contenue du fichier c'est sa ?
0
Matador.J Messages postés 1 Date d'inscription jeudi 17 janvier 2019 Statut Membre Dernière intervention 17 janvier 2019
17 janv. 2019 à 19:58
Donne lui Le code qu'il arrête de saoul
0
Jordi.D Messages postés 51 Date d'inscription vendredi 11 janvier 2019 Statut Membre Dernière intervention 8 février 2019
17 janv. 2019 à 20:02
Désole je suis novice aussi en vbs donc je ne comprends pas vraiment :/
0
jordane45 Messages postés 38392 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 23 janvier 2025 4 731
17 janv. 2019 à 21:42
Ohhh... Deux comptes du même utilisateur...
C'est bien...
Ben vu que je "vous" saoul.. d#*&erde toi...
0
Jordi.D > jordane45 Messages postés 38392 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 23 janvier 2025
18 janv. 2019 à 01:38
Lol vous êtes naïve deux compte certe mais pas du même utilisateur..il s'agissait de mon frère .
Mais merci quand même jai reussi à trouvé le problème bonne soirée
0