Couplage de script VBS

smully Messages postés 2 Date d'inscription   Statut Membre Dernière intervention   -  
lermite222 Messages postés 8724 Date d'inscription   Statut Contributeur Dernière intervention   -
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.

A voir également:

4 réponses

lermite222 Messages postés 8724 Date d'inscription   Statut Contributeur Dernière intervention   1 191
 
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.
0
lermite222 Messages postés 8724 Date d'inscription   Statut Contributeur Dernière intervention   1 191
 
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+
0
smully Messages postés 2 Date d'inscription   Statut Membre Dernière intervention  
 
ok merci cool ça fonctionne par contre ça n'écrit pas dans un fichier....

;...je suis chiant

:-)
0
lermite222 Messages postés 8724 Date d'inscription   Statut Contributeur Dernière intervention   1 191
 
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+
0