Couplage de script VBS

Fermé
Messages postés
2
Date d'inscription
vendredi 23 décembre 2011
Statut
Membre
Dernière intervention
23 décembre 2011
-
Messages postés
8700
Date d'inscription
dimanche 8 avril 2007
Statut
Contributeur
Dernière intervention
22 janvier 2020
-
Bonjour,

je souhaiterai coupler deux scripts VBS qui fonctionnent bien.

Le but étant de lister les images d'un dossier en affichant la dimension de l'image et son poids (grace à getdetailsof)

voici le premier script :


Dim stRep 'Nom du répertoire à parcourir
Dim oFSO,oFl
Set oFSO = CreateObject("Scripting.FileSystemObject")
stRep = "C:\Tmp"
If oFSO.FolderExists(stRep) Then
For each oFl in oFSO.GetFolder(stRep).Files
Wscript.Echo oFl.Name
Next
End If



et le deuxième


Const DIMENSIONS = 31
CONST WIDTH = 162
CONST HEIGTH = 164

Set oShell = CreateObject ("Shell.Application")
Set oFolder = oShell.Namespace ("d:\")
Set oFile = oFolder.ParseName("clé.bmp")

strDimensions = oFolder.GetDetailsOf(oFile, DIMENSIONS)
strWidth = oFolder.GetDetailsOf(oFile, WIDTH)
strHeigth = oFolder.GetDetailsOf(oFile, HEIGTH)

WScript.Echo "Dimensions: " & strDimensions & vbNewLine & _
"Width: " & strWidth & vbNewLine & _
"Height: " & strHeigth






En poussant le vice un peu plus loin si ça pouvait etre inscrit dans un fichier txt ça serait cool...

En vous remericant d'avance.

4 réponses

Messages postés
8700
Date d'inscription
dimanche 8 avril 2007
Statut
Contributeur
Dernière intervention
22 janvier 2020
1 197
Bonjour,
Si je comprend bien tu veux avoir les noms et données des fichiers.
Si oui, Pas besoin de ta deuxième fonction, l'objet Fso fais cela très bien, même plus.
A+
Edit: Pas bien lu, tu veux les dimensions d'un bmp et effectivement Fso ne fait pas ça.
Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
NOTE : Je ne répond pas aux MP pour les questions techniques.
Messages postés
8700
Date d'inscription
dimanche 8 avril 2007
Statut
Contributeur
Dernière intervention
22 janvier 2020
1 197
En extrapolant un peu
Const DIMENSIONS = 31
Const WIDTH = 162
Const HEIGTH = 164
Dim stRep 'Nom du répertoire à parcourir
Dim oFSO, oFl
    Set oShell = CreateObject("Shell.Application")
    Set oFSO = CreateObject("Scripting.FileSystemObject")
    stRep = "C:\Tmp"
    If oFSO.FolderExists(stRep) Then
        Set oFolder = oShell.Namespace(stRep)
        For Each oFl In oFSO.GetFolder(stRep).Files
            Set oFile = oFolder.ParseName(oFl.Name)
            strDimensions = oFolder.GetDetailsOf(oFile, DIMENSIONS)
            strWidth = oFolder.GetDetailsOf(oFile, WIDTH)
            strHeigth = oFolder.GetDetailsOf(oFile, HEIGTH)
            WScript.Echo oFl.Name & "Dimensions: " & strDimensions & vbNewLine & _
            "Width: " & strWidth & vbNewLine & _
            "Height: " & strHeigth
        Next
    End If

A+
Messages postés
2
Date d'inscription
vendredi 23 décembre 2011
Statut
Membre
Dernière intervention
23 décembre 2011

ok merci cool ça fonctionne par contre ça n'écrit pas dans un fichier....

;...je suis chiant

:-)
Messages postés
8700
Date d'inscription
dimanche 8 avril 2007
Statut
Contributeur
Dernière intervention
22 janvier 2020
1 197
Oui :-)
Je ne connais pas bien le VBScript, je serais plutôt pour les autres VB
Cherche du côté de Open pour ouvrir un fichier du genre..
Open "Fichier.txt" for output as #1
Pour écrite voir Write du genre
Write #1, oFl.Name , "Dimensions: " , strDimensions, _
"Width: " , strWidth & vbNewLine, _
"Height: ", strHeigth

Et quand fini : Close #1
Vois ce que tu peu faire avec ça.
A+