Précédent   Forum du club des développeurs et IT Pro > Autres langages > Général Visual Basic 6 et VBScript > VBScript
VBScript Le forum d'entraide sur VBScript. Avant de poster -> La FAQ VBScript
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 10/01/2013, 15h23   #1
luffy324
Invité de passage
 
Inscription : janvier 2013
Messages : 5
Détails du profil
Informations forums :
Inscription : janvier 2013
Messages : 5
Points : 1
Points : 1
Par défaut Récupération de variables dans un fichier INI

Bonjour,

ne pouvant faire mon projet en batch je suis obliger de me tourner vers le vbs. Néanmoins, comment est-il possible de récupérer les variables d'un fichier INI suivant ce qui se trouve avant le égal?

exemple:

mon fichier ini

STARTPROC1 = notepad.exe
CHEMINSOURCE = test\test

j'aimerais récupérer les variables qui se trouvent après le = mais en vérifiant ce qui se trouve avant le égale pour les ranger dans des bonnes variables.

je ne sais pas si je suis clair mais si quelqu'un peut m'aider svp?

merci d'avance
luffy324 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/01/2013, 18h51   #2
papyxy
Membre actif
 
Homme alain
retraité
Inscription : juillet 2011
Messages : 209
Détails du profil
Informations personnelles :
Nom : Homme alain
Âge : 67
Localisation : France, Pas de Calais (Nord Pas de Calais)

Informations professionnelles :
Activité : retraité

Informations forums :
Inscription : juillet 2011
Messages : 209
Points : 156
Points : 156
Envoyer un message via MSN à papyxy Envoyer un message via Yahoo à papyxy Envoyer un message via Skype™ à papyxy
salut
je peux te proposer ce qui suit, il permet de retrouver tous les termes d'une phrase :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
toto="   STARTPROC1 = notepad.exe "
dim t() ,it,z
        z=""
        '               stocker les mots ds un tableau (t)
for i=1 to len(toto)
            x=mid(toto,i,1)
        if  x<>" "  then  z = z & x   else    call   charg_t
next
        call charg_t
 
        zz=""
for i=0 to ubound(t)-1
        zz=zz & t(i) & "<"  & vbcr
next
msgbox  zz
 
 
sub charg_t
                if z="" then exit sub
                it=it+1
                redim preserve t(it)
                t(it-1)=z
                z=""
end sub
Exécute-le et aménage à ta convenance.

(c'est peut-être pas le plus astucieux, mais ça fonctionne)
papyxy est déconnecté   Envoyer un message privé Réponse avec citation 01
Vieux 11/01/2013, 11h11   #3
pc75
Expert Confirmé
 
Avatar de pc75
 
Inscription : septembre 2004
Messages : 3 094
Détails du profil
Informations personnelles :
Âge : 57
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : septembre 2004
Messages : 3 094
Points : 3 287
Points : 3 287
Bonjour,

Une autre méthode :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 
Const ForReading = 1
Dim fso, Fichier, Ligne
Set fso = CreateObject("Scripting.FileSystemObject")
Str_Fichier = "LireIni.ini"
Set Fichier = fso.OpenTextFile(Str_Fichier, ForReading, False)
Do While Fichier.AtEndOfStream <> True
   Ligne = Fichier.ReadLine
   Egal = InStr(Ligne, "=")
   Variable = Trim(Left(Ligne, Egal - 1))
   Valeur = Trim(Mid(Ligne, Egal + 1))
   MsgBox "la valeur de " & Variable & " est : " & Valeur
Loop
Fichier.Close
Set Fichier = Nothing
Set fso = Nothing
__________________
Par principe, je ne réponds pas aux messages URGENT.
Il n'y a pas de choses urgentes, il n'y a que des choses en retard. (un inconnu)
Pas de questions techniques en MP.
pc75 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/01/2013, 12h03   #4
papyxy
Membre actif
 
Homme alain
retraité
Inscription : juillet 2011
Messages : 209
Détails du profil
Informations personnelles :
Nom : Homme alain
Âge : 67
Localisation : France, Pas de Calais (Nord Pas de Calais)

Informations professionnelles :
Activité : retraité

Informations forums :
Inscription : juillet 2011
Messages : 209
Points : 156
Points : 156
Envoyer un message via MSN à papyxy Envoyer un message via Yahoo à papyxy Envoyer un message via Skype™ à papyxy
dans le même style que PC75 voila une autre façon :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
 fini="c:\windows\win.ini"
 
 Set        oFso = CreateObject("Scripting.FileSystemObject")
     if not ofso.fileexists(fini) then _
            msgbox "fichier non trouvé",, fini : wscript.quit
             z="Variables             valeurs" & vbcr & _
               "=============================" & vbcr
  Set f = oFso.OpenTextFile(fini)
  while Not f.AtEndOfStream
     l=f.readline
     if instr(1,l,"=") > 0 then
             t= split(l,"=")
'       +--------------------------------------------------+
'       | la variable sera dans t(0)                       |
'       | la valeur   sera dans t(1)                       |
'       +--------------------------------------------------+
             z=z & rpad(t(0),20) & "    " & t(1) & vbcr
     end if
  Wend
  f.Close
 
msgbox  z
'----------------complète par des espaces à droite------------------------------
function rpad(y,z)
         rpad= y & string(z-len(y)," ")
end function
papyxy est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 17h28.


 
 
 
 
Partenaires

Hébergement Web