IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBScript Discussion :

a propos d'un script


Sujet :

VBScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Avatar de koKoTis
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 438
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 438
    Par défaut a propos d'un script
    Bonjour, je suis entrain de créer un script pour généré une galerie web de photos ou d'images:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
     
    Dim FSO, VrPrgImgMgck, stRep, DesktopPath, f
     
    set WshShell = WScript.CreateObject("WScript.Shell")               
    Set FSO = CreateObject("Scripting.FileSystemObject")
    Set oFSO = CreateObject("Scripting.FileSystemObject")
    Set objFSO = CreateObject("Scripting.FileSystemObject")
     
    VrPrgImgMgck = "C:\_KooKaTix\Kktx_Prog\ImageMagick"
    DesktopPath = WSHShell.SpecialFolders("Desktop")
     
    Const BIF_EDITBOX = &H10 
    Const BIF_NEWDIALOGSTYLE = &H40 
    Set sa = CreateObject("Shell.Application") 
    Set Folder = sa.BrowseForFolder(0, "My Computer:", BIF_EDITBOX Or BIF_NEWDIALOGSTYLE) 
    BrowseAndCreate = Folder.items.Item.Path 
     
    VarSaisieUtilisateur = InputBox("Tapez le nom de la nouvelle galerie", "Tapez le nom de la nouvelle galerie") 
     
    If Not objFSO.FolderExists(DesktopPath & "\Galerie") Then Set objFolder = objFSO.CreateFolder(DesktopPath & "\Galerie")
    Set objFolder = objFSO.CreateFolder(DesktopPath & "\Galerie\" & VarSaisieUtilisateur)
     
     
    FSO.CopyFolder BrowseAndCreate, DesktopPath & "\Galerie\" & VarSaisieUtilisateur & "\vignettes"
    FSO.CopyFolder BrowseAndCreate, DesktopPath & "\Galerie\" & VarSaisieUtilisateur & "\pages"
     
     
    ' On créer les vignettes
    If oFSO.FolderExists(DesktopPath & "\Galerie\" & VarSaisieUtilisateur & "\vignettes") Then
     For each oFl in  oFSO.GetFolder(DesktopPath & "\Galerie\" & VarSaisieUtilisateur & "\vignettes").Files
       WshShell.Run VrPrgImgMgck & "\mogrify -resize 159x170 """ & DesktopPath & "\Galerie\" & VarSaisieUtilisateur & "\vignettes" & "\" & oFl.Name & """" 
     Next
    End If
     
    If oFSO.FolderExists(DesktopPath & "\Galerie\" & VarSaisieUtilisateur & "\pages") Then
     For each oFl in  oFSO.GetFolder(DesktopPath & "\Galerie\" & VarSaisieUtilisateur & "\pages").Files
       WshShell.Run VrPrgImgMgck & "\mogrify -resize 600x600 """ & DesktopPath & "\Galerie\" & VarSaisieUtilisateur & "\pages" & "\" & oFl.Name & """" 
     Next
    End If
     
     
     
    Const ForReading = 1, ForWriting = 8 
      Set FichierTXT = WScript.CreateObject("WScript.Shell") 
       Set fso = CreateObject("Scripting.FileSystemObject") 
       Set f = fso.OpenTextFile(DesktopPath & "\Galerie\" & VarSaisieUtilisateur & "\index.htm", ForWriting,true) 
     
    If oFSO.FolderExists(DesktopPath & "\Galerie\" & VarSaisieUtilisateur & "\vignettes") Then
     For each oFl in  oFSO.GetFolder(DesktopPath & "\Galerie\" & VarSaisieUtilisateur & "\vignettes").Files
       f.writeline("<a href=""" & oFl.Name & """><img src=""vignettes\" & oFl.Name & """ border=""0""></a><br>") 
     Next
    End If
     
    f.close
    Ce pandant j'ai deux questions:

    1) Puis-je avec mes boucle qui liste les fichier ne lister que les extension .gif et .jpg ? si oui commen ?

    2) Puis-je dans mes boucle récupérer le nom des fichier avec la variable oFl.Name mais san l'extension ?

  2. #2
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    déjà il y as un truc qui me "turlupine" :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Set FSO = CreateObject("Scripting.FileSystemObject")
    Set oFSO = CreateObject("Scripting.FileSystemObject")
    Set objFSO = CreateObject("Scripting.FileSystemObject")
    pourquoi autant d'objet Scripting.FileSysteObject...? un seul suffit bien...



    bon ensuite pour le 1/ .. il suffit de tester l'extension :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    dim stExt 
    (...)
    For each oFl in  oFSO.GetFolder(DesktopPath & "\Galerie\" & VarSaisieUtilisateur & "\pages").Files
     stExt = oFso.GetExtensionName(oFl) 
     
    if stExt = "jpg" or stExt = "bmp" then
          WshShell.Run VrPrgImgMgck & "\mogrify -resize 600x600 """ & DesktopPath & "\Galerie\" & VarSaisieUtilisateur & "\pages" & "\" & oFl.Name & """"
     
    end if 
     Next
    pour le 2/ utilise Getbasename :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    msgbox oFso.Getbasename(oFl)

  3. #3
    Membre éprouvé
    Avatar de koKoTis
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 438
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 438
    Par défaut
    Bonjour et merci beaucoup

    il y a plusieur objet par ce que j'ai récupérer plusieurs script pour faire mon script est les objet n'avait pas le même nom pour tous

    Pour le 1 comment tester l'extension ?

    Pour le deux c'est parfait

  4. #4
    Membre éprouvé
    Avatar de koKoTis
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 438
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 438
    Par défaut
    ah autre chose, j'ai rajouter ceci dans mon script:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    ' On créer le fichier sommaire des galerie:
      Set FichierTXT = WScript.CreateObject("WScript.Shell") 
       Set fso = CreateObject("Scripting.FileSystemObject") 
       Set f = fso.OpenTextFile(DesktopPath & "\Galerie\index.htm", ForWriting,true) 
    If FSO.FolderExists(DesktopPath & "\Galerie") Then
     For each oFld in  FSO.GetFolder(DesktopPath & "\Galerie").SubFolders
       f.writeline("<a href=""" & oFld.Name & "\index.htm"">" & oFl.Name & "</a>") 
     Next
    End If
    f.close
    Il me dit objet oFL requi, mais il n'est pas créer l'objet ?

  5. #5
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    Citation Envoyé par koKoTis Voir le message
    il y a plusieur objet par ce que j'ai récupérer plusieurs script pour faire mon script est les objet n'avait pas le même nom pour tous
    et si je te met un script où je met comme nom de variable oFsoAKokoTis tu vas nous rajouter une autre objet filesystem..?

    Citation Envoyé par koKoTis Voir le message
    Pour le 1 comment tester l'extension ?
    ben la ligne de code if .... c'est un test .. :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    ..
     stExt = oFso.GetExtensionName(oFl) 
     
    if stExt = "jpg" or stExt = "bmp" then
    ...

    Citation Envoyé par koKoTis Voir le message
    Il me dit objet oFL requi, mais il n'est pas créer l'objet ?
    ben c'est comme pour requis .. il manque la derniére lettre à Ofld

  6. #6
    Membre éprouvé
    Avatar de koKoTis
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 438
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 438
    Par défaut
    sayet je n'ai plu qu'un seul objet


    merci encore

    j'ai essayer d'intégrer le test de l'extenison dans mon code mais aucun liens n'est créer dans ma page html:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    ' On créer le fichier index.html de la galerie avec les vignettes:
    Const ForReading = 1, ForWriting = 8 
      Set FichierTXT = WScript.CreateObject("WScript.Shell") 
       Set fso = CreateObject("Scripting.FileSystemObject") 
       Set f = fso.OpenTextFile(DesktopPath & "\Galerie\" & VarSaisieUtilisateur & "\index.htm", ForWriting,true) 
    If FSO.FolderExists(DesktopPath & "\Galerie\" & VarSaisieUtilisateur & "\vignettes") Then
     For each oFl in  FSO.GetFolder(DesktopPath & "\Galerie\" & VarSaisieUtilisateur & "\vignettes").Files
     stExt = Fso.GetExtensionName(oFl) 
     
    if stExt = "jpg" or stExt = "bmp" or stExt = "gif" then f.writeline("<a href=""pages\" & FSO.Getbasename(oFl) & ".htm""><img src=""vignettes\" & oFl.Name & """ border=""0""></a>") 
     Next
    End If
    f.close

  7. #7
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    histoire de vérifier la lecture de l'extension rajoute la ligne suivante .: (la seconde..)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    stExt = Fso.GetExtensionName(oFl) 
    Wscript.Echo stExt

  8. #8
    Membre éprouvé
    Avatar de koKoTis
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 438
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 438
    Par défaut
    comme ca alor:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
     
    Dim FSO, VrPrgImgMgck, stRep, DesktopPath, f
     
    set WshShell = WScript.CreateObject("WScript.Shell")               
    Set FSO = CreateObject("Scripting.FileSystemObject")
     
    VrPrgImgMgck = "C:\_KooKaTix\Kktx_Prog\ImageMagick"
    DesktopPath = WSHShell.SpecialFolders("Desktop")
     
    Const BIF_EDITBOX = &H10 
    Const BIF_NEWDIALOGSTYLE = &H40 
    Set sa = CreateObject("Shell.Application") 
    Set Folder = sa.BrowseForFolder(0, "My Computer:", BIF_EDITBOX Or BIF_NEWDIALOGSTYLE) 
    BrowseAndCreate = Folder.items.Item.Path 
     
    VarSaisieUtilisateur = InputBox("Tapez le nom de la nouvelle galerie", "Tapez le nom de la nouvelle galerie") 
     
    If Not FSO.FolderExists(DesktopPath & "\Galerie") Then Set objFolder = FSO.CreateFolder(DesktopPath & "\Galerie")
    Set objFolder = FSO.CreateFolder(DesktopPath & "\Galerie\" & VarSaisieUtilisateur)
     
    ' On créer le répertoire pour la galerie sur le bureau:
    FSO.CopyFolder BrowseAndCreate, DesktopPath & "\Galerie\" & VarSaisieUtilisateur & "\vignettes"
    FSO.CopyFolder BrowseAndCreate, DesktopPath & "\Galerie\" & VarSaisieUtilisateur & "\pages"
     
     
    ' On créer les vignettes
    If FSO.FolderExists(DesktopPath & "\Galerie\" & VarSaisieUtilisateur & "\vignettes") Then
     For each oFl in  FSO.GetFolder(DesktopPath & "\Galerie\" & VarSaisieUtilisateur & "\vignettes").Files
       WshShell.Run VrPrgImgMgck & "\mogrify -resize 159x170 """ & DesktopPath & "\Galerie\" & VarSaisieUtilisateur & "\vignettes" & "\" & oFl.Name & """" 
     Next
    End If
     
    ' On redimentionne les images:
    If FSO.FolderExists(DesktopPath & "\Galerie\" & VarSaisieUtilisateur & "\pages") Then
     For each oFl in  FSO.GetFolder(DesktopPath & "\Galerie\" & VarSaisieUtilisateur & "\pages").Files
       WshShell.Run VrPrgImgMgck & "\mogrify -resize 600x600 """ & DesktopPath & "\Galerie\" & VarSaisieUtilisateur & "\pages" & "\" & oFl.Name & """" 
     Next
    End If
     
     
    ' On créer le fichier index.html de la galerie avec les vignettes:
    Const ForReading = 1, ForWriting = 8 
      Set FichierTXT = WScript.CreateObject("WScript.Shell") 
       Set fso = CreateObject("Scripting.FileSystemObject") 
       Set f = fso.OpenTextFile(DesktopPath & "\Galerie\" & VarSaisieUtilisateur & "\index.htm", ForWriting,true) 
    If FSO.FolderExists(DesktopPath & "\Galerie\" & VarSaisieUtilisateur & "\vignettes") Then
     For each oFl in  FSO.GetFolder(DesktopPath & "\Galerie\" & VarSaisieUtilisateur & "\vignettes").Files
     stExt = Fso.GetExtensionName(oFl) 
    Wscript.Echo stExt
     'if stExt = "jpg" or stExt = "bmp" or stExt = "gif" then 
         f.writeline("<a href=""pages\" & FSO.Getbasename(oFl) & ".htm""><img src=""vignettes\" & oFl.Name & """ border=""0""></a>") 
     Next
    End If
    f.close
     
     
    ' On créer les page html pour les images:
    If FSO.FolderExists(DesktopPath & "\Galerie\" & VarSaisieUtilisateur & "\pages") Then
     For each oFl in  FSO.GetFolder(DesktopPath & "\Galerie\" & VarSaisieUtilisateur & "\pages").Files
      Set FichierTXT = WScript.CreateObject("WScript.Shell") 
       Set fso = CreateObject("Scripting.FileSystemObject") 
       Set f = fso.OpenTextFile(DesktopPath & "\Galerie\" & VarSaisieUtilisateur & "\pages\" & FSO.Getbasename(oFl) & ".htm", ForWriting,true)
       f.writeline("<a href=""..\index.htm""><img src=""" & oFl.Name & """ border=""0""></a>") 
       f.close
     Next
    End If
     
     
    ' On créer le fichier sommaire des galerie:
      Set FichierTXT = WScript.CreateObject("WScript.Shell") 
       Set fso = CreateObject("Scripting.FileSystemObject") 
       Set f = fso.OpenTextFile(DesktopPath & "\Galerie\index.htm", ForWriting,true) 
    If FSO.FolderExists(DesktopPath & "\Galerie") Then
     For each oFld in  FSO.GetFolder(DesktopPath & "\Galerie").SubFolders
       f.writeline("<a href=""" & oFld.Name & "\index.htm"">" & oFld.Name & "</a><br>") 
     Next
    End If
    f.close

Discussions similaires

  1. 2 Questions à propos d'un script
    Par L'aigle de Carthage dans le forum Général JavaScript
    Réponses: 18
    Dernier message: 26/03/2008, 16h17
  2. A propos du scripting sous Windows
    Par spynux dans le forum Windows Serveur
    Réponses: 6
    Dernier message: 17/09/2007, 22h02
  3. questions à propos de Perl - scripts cgi
    Par jejerome dans le forum Web
    Réponses: 10
    Dernier message: 28/02/2006, 08h17
  4. A propos du fichier « scripts.ini »
    Par Furius dans le forum Windows
    Réponses: 6
    Dernier message: 28/09/2005, 23h30

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo