Vbs cherche script liste dossier sous dossier
olivierapprenti
Messages postés
2
Date d'inscription
Statut
Membre
Dernière intervention
-
Info -
Info -
Bonjour,
voilà mon premier post étant donner que je ne trouve pas de solution :
je cherche un script vbs ou batch permettant un listing de dossier et sous dossier ainsi que les fichier s'y trouvant et cela dans une page html.
j'ai un dossier AUDIO dont j'aimerai faire afficher dans un page html son contenue.
sachant que dans mon dossier AUDIO figure X sous dossier ex:
repertoire :AUDIO
sous repertoire :
rap
r&b
varieter
....
et dans ces sous repertoire figure également les repertoire des artiste en question
et pour finir les fichier .mp3
le but de la création voulu de cette liste en forma html
est que j'ai créer une petite application en vb permettant de se connecter à mon ftp
et j'aimerai y insérer CETTE LISTE HTML de mes fichier mp3 pour que l'utilisateur n'es pas à parcourir X répertoires pour savoir ce qui s'y trouve.
en vous remerciant du temps consacrer et de votre aide
voilà mon premier post étant donner que je ne trouve pas de solution :
je cherche un script vbs ou batch permettant un listing de dossier et sous dossier ainsi que les fichier s'y trouvant et cela dans une page html.
j'ai un dossier AUDIO dont j'aimerai faire afficher dans un page html son contenue.
sachant que dans mon dossier AUDIO figure X sous dossier ex:
repertoire :AUDIO
sous repertoire :
rap
r&b
varieter
....
et dans ces sous repertoire figure également les repertoire des artiste en question
et pour finir les fichier .mp3
le but de la création voulu de cette liste en forma html
est que j'ai créer une petite application en vb permettant de se connecter à mon ftp
et j'aimerai y insérer CETTE LISTE HTML de mes fichier mp3 pour que l'utilisateur n'es pas à parcourir X répertoires pour savoir ce qui s'y trouve.
en vous remerciant du temps consacrer et de votre aide
A voir également:
- Vbs cherche script liste dossier sous dossier
- Dossier appdata - Guide
- Liste déroulante excel - Guide
- Impossible de supprimer un dossier - Guide
- Dossier démarrage - Guide
- Dossier rar - Guide
1 réponse
Bonjour,
Je ne suis pas expert pour pousser le resultat de cette recherche
sur une page html. Toutefois, si tu peut adapter ce script, celui-ci
fais ce que tu damande mais pousse l'information dans un fichier Excel.
C'est un début ...
Une fois en Excel tu pourra toujours sauvegarder le fichier en HTML.
Cdt
Info
Je ne suis pas expert pour pousser le resultat de cette recherche
sur une page html. Toutefois, si tu peut adapter ce script, celui-ci
fais ce que tu damande mais pousse l'information dans un fichier Excel.
C'est un début ...
'============================================================================================== ' ' Fichier Source VBScript ' ' NOM DU FICHIER : <ARBORESCENCE_Sous_EXCEL.VBS> ' ' AUTEUR : Michel Blais ' DATE DE CRÉATION : 2002-11-05 ' DATE DE MODIFICATION : 2008-04-20 ' Version 3.2 ' ' COMMENT: <Compiler dans un fichier EXCEL toutes les informations ' des fichiers d'un lecteur et/ou d'un répertoire cible '(Ligne 14)==================================================================================== ' 'Accèss au dossier d'un disque ' Const cteCache = "Caché" Const cteSysteme = "Système" Const cteArchive = "cteArchive" Const cteLecture = "cteLecture_Seulement" Const cteRaccourci = "cteRaccourci" Const cteCompresse = "Compressé" Const ctePlgFitGlobale = "A1:P1" ' '(Ligne 26)==================================================================================== ' ' Déclaration des variables globales du programme ' Dim oLecteur 'ObjetLecteurDeDisque Dim oRepertoire 'ObjetRépertoire Dim oFS 'ObjetFileSystem (Objet du système de fichier) Dim sOutput 'Variable d'écriture Dim oInfoLecteur 'Variable d'information sur le lecteur courant Dim oInfoFichier 'Variable d'information sur le fichier courant Dim Lecteur 'Variable du lecteur à lire Dim Disque 'Variable du lecteur à écrire Dim Fichier 'Variable du fichier de sortie Dim Flag 'Drapeau (logique) Dim msgTexte 'Variable de message à l'usager Dim lngTexte 'Variable de la longueur d'une chaine de caractères Dim Dossier 'Variable chaine du dossier de départ Dim DonneesValide 'Variable de la valeur des saisies ' '(Ligne 45)==================================================================================== ' ' Déclaration des variables globales du classeur EXCEL ' Dim xlApp, xlBook, xlChart, xlRange 'Objets classeur Dim xlWhs, iRows, iCols, iRotate 'Objets feuille ' '(Ligne 52)==================================================================================== ' Debut du programme ' 'Sub Main()' (Attention, le label n'exite pas en VBS) DonneesValide = CaptureEntree(Fichier,Lecteur,Dossier) If ( DonneesValide ) Then ' Création de l'objet Excel (une classe) Set oFS = CreateObject("Scripting.FileSystemObject") Set xlApp = CreateObject("Excel.Application") ' Vérification de la présence du classeur If (FichierExistant(Fichier) = True) Then ' Ouverture du classeur Set xlBook = xlApp.Workbooks.Open(Fichier) Flag = True Else ' Création du classeur xlApp.SheetsInNewWorkbook = 1 Set xlBook = xlApp.Workbooks.Add End If ' Positionnement à l'intérieur du classeur Set xlWKS = xlBook.Worksheets(1) Set xlRange = xlWKS.Range("A1:A65535") ' Capture de la lettre du lecteur à écrire Disque = Mid(Fichier, 1, 2) Set oLecteur = oFS.GetDrive(Disque) If (oLecteur.IsReady) Then ' Capture de la lettre du lecteur à lire Set oLecteur = oFS.GetDrive(Lecteur) If (oLecteur.IsReady) Then Call Principal(Fichier) Else EnvoiMessage (0) End If Else EnvoiMessage (0) End If End if ' WScript.Quit(0) 'End Sub (Le label n'exite pas en VBS) Fin de Programme ' '(Ligne 94)==================================================================================== ' Function CaptureEntree(ByRef FichierCE, ByRef LecteurCE, ByRef DossierCE) On Error Resume next Flag = False FichierCE = "" msgTexte = msgTexte & "Attention!" & vbCrLf & vbCrLf msgTexte = msgTexte & "Le programme ne gère pas les erreurs!" & vbCrLf & vbCrLf & vbCrLf msgTexte = "Entrez le nom du fichier : " & vbCrLf & "(ex.: C:\Infofile.xls)" FichierCE = InputBox(msgTexte, "Saisie du fichier à créer", "C:\Info.xls") If ( len(FichierCE) > 7 ) Then LecteurCE = "" LecteurCE = InputBox("Entrez la lettre du lecteur à lire :", "Saisie du lecteur à lire", "C") If ( Len(LecteurCE) = 1 ) Then DossierCE = "" DossierCE = InputBox("Entrez le dossier cible du lecteur à lire :", "Saisie du dossier à lire", "\TEMP") If ( len(DossierCE) > 1 ) Then CaptureEntree = True Else DossierCE = "" CaptureEntree = true End If Else CaptureEntree = False End If Else CaptureEntree = False End if End Function ' '(Ligne 128)=================================================================================== ' Sub Principal(ByVal NomFichier) Dim Plage Dim Valeur Dim Boucle On Error Resume Next ' Création de l'En-tête du fichier Excel Call CreationEnTete 'Placement d'Excel en arrière plan! xlApp.WindowState = xlMinimized xlApp.ScreenUpdating = False If (oLecteur.IsReady) Then If (Dossier <> "") Then 'cteLecture à partir du sous-répertoire cible Set oRepertoire = oFS.GetFolder(Lecteur & ":" & Dossier) xlApp.Visible = True xlWKS.Activate xlRange.Cells(1, 1).Select Call ListeFichier(oRepertoire) ' Routine récursive Else 'cteLecture des fichiers dans la racine du lecteur If (oLecteur.RootFolder.Files.Count > 0) Then For Each oFichier In oLecteur.RootFolder.Files InsertionDonnees (oFichier) Next End If 'cteLecture des sous-répertoires dans le lecteur For Each oRepertoire In oLecteur.RootFolder.SubFolders xlApp.Visible = True xlWKS.Activate xlRange.Cells(1, 1).Select Call ListeFichier(oRepertoire) ' Routine récursive Next End If End If MiseEnforme 'Placement d'Excel en avant plan! xlApp.ScreenUpdating = True xlApp.WindowState = xlMaximized xlRange.Columns("A:A").EntireColumn.AutoFit xlRange.Columns("E:G").EntireColumn.AutoFit 'Fermeture du fichier Excel Call FermetureExcel() WScript.echo "Merci de votre patience." & vbLf & vbLf & "Michel Blais" & vbLf & _ "Électrotechnicien/Informatique" & vbLf & vbLf & "Fin de traitement :-) " End Sub ' '(Ligne 182)=================================================================================== ' Function FichierExistant(NomFichier) Dim fso Set fso = CreateObject("Scripting.FileSystemObject") FichierExistant = fso.FileExists(NomFichier) Set fso = Nothing End Function ' '(Ligne 194)=================================================================================== ' Function EnvoiMessage(ByVal Chiffre) Select Case Chiffre Case 0: msgTexte = "Lecteur non disponible !" Case 1: msgTexte = "Disponible !" Case 2: msgTexte = "Disponible !" Case 3: msgTexte = "Disponible !" Case 4: msgTexte = "Disponible !" Case 5: msgTexte = "Disponible !" Case 6: msgTexte = "Disponible !" Case Else: msgTexte = "Code d'erreur inexistant !" End Select Wscript.Echo msgTexte End Function ' '(Ligne 213)=================================================================================== ' Sub ListeFichier(ByVal oRepertoire) ' Routine récursive Dim oDossier On Error Resume Next If (oRepertoire.Files.Count > 0) Then For Each oFichier In oRepertoire.Files InsertionDonnees (oFichier) Next End If If (oRepertoire.SubFolders.Count > 0) Then For Each oDossier In oRepertoire.SubFolders Call ListeFichier(oDossier) Next End If End Sub ' '(Ligne 235)=================================================================================== ' Function ChercheAttributs(ByVal oFichier, ByVal Validation, ByRef Repons) On Error Resume Next Repons = "Aucun" Select Case (Validation) Case (cteLecture): If (oFichier.Attributes And 1) Then Repons = "Activer" 'Read-only = VRAI Else Repons = "Désactiver" 'Read-only = FAUX End If Case (cteCache): If (oFichier.Attributes And 2) Then Repons = "Activer" 'Hidden file = VRAI Else Repons = "Désactiver" 'Hidden file = FAUX End If Case (cteSysteme): If (oFichier.Attributes And 4) Then Repons = "Activer" 'System file = VRAI Else Repons = "Désactiver" 'System file = FAUX End If Case (cteArchive): If (oFichier.Attributes And 32) Then Repons = "Activer" 'cteArchive bit = VRAI Else Repons = "Désactiver" 'cteArchive bit = FAUX End If Case (cteRaccourci): If (oFichier.Attributes And 64) Then Repons = "Activer" 'ShortCut = VRAI Else Repons = "Désactiver" 'ShortCut = FAUX End If Case (cteCompresse): If (oFichier.Attributes And 2048) Then Repons = "Activer" 'cteCompressed file = VRAI Else Repons = "Désactiver" 'cteCompressed file = FAUX End If Case Else: Repons = "Aucun" End Select End Function ' '(Ligne 292)=================================================================================== ' Function CreationEnTete() Dim Valeur Dim Boucle On Error Resume Next If (Flag = False) Then 'Création de l'en-tête du fichier EXCEL xlRange.Cells(1, 1).Value = "Nom Fichier" xlRange.Cells(1, 2).Value = "Type Fichier" xlRange.Cells(1, 3).Value = "Grandeur" xlRange.Cells(1, 4).Value = "Chemin d'accès" xlRange.Cells(1, 5).Value = "Date Créé" xlRange.Cells(1, 6).Value = "Date Accédé" xlRange.Cells(1, 7).Value = "Date Modifié" xlRange.Cells(1, 8).Value = "Nom cours" xlRange.Cells(1, 9).Value = "Chemin cours" xlRange.Cells(1, 10).Value = "Version" xlRange.Cells(1, 11).Value = "Attr Caché" xlRange.Cells(1, 12).Value = "Attr Système" xlRange.Cells(1, 13).Value = "Attr Archive" xlRange.Cells(1, 14).Value = "Attr Lecture seule" xlRange.Cells(1, 15).Value = "Attr Raccourci" xlRange.Cells(1, 16).Value = "Attr compressé" ' Dans Sub MiseEnForme la plage est ("A1:P1") ' Défini par la constante ctePlgFitGlobale iRows = 2 Else Boucle = 1 Valeur = xlRange.Cells(1, 1).Value While (Valeur <> "") Boucle = (Boucle + 1) Valeur = xlRange(Boucle, 1) Wend iRows = Boucle End If End Function ' '(Ligne 334)=================================================================================== ' Function MiseEnForme() xlRange.Columns(ctePlgFitGlobale).EntireColumn.AutoFit xlRange("A2").Select End Function ' '(Ligne 343)=================================================================================== ' Function InsertionDonnees(ByVal CeFichier) On Error Resume Next Dim Reponse xlRange.Cells(iRows, 1).Value = CeFichier.Name xlRange.Cells(iRows, 2).Value = CeFichier.Type xlRange.Cells(iRows, 3).Value = CeFichier.Size xlRange.Cells(iRows, 4).Value = CeFichier.Path xlRange.Cells(iRows, 5).Value = CeFichier.DateCreated xlRange.Cells(iRows, 6).Value = CeFichier.DateLastAccessed xlRange.Cells(iRows, 7).Value = CeFichier.DateLastModified xlRange.Cells(iRows, 8).Value = CeFichier.ShortName xlRange.Cells(iRows, 9).Value = CeFichier.ShortPath xlRange.Cells(iRows, 10).Value = ChercheVersion(CeFichier.Name) Call ChercheAttributs(CeFichier, cteCache, Reponse) xlRange.Cells(iRows, 11).Value = Reponse Call ChercheAttributs(CeFichier, cteSysteme, Reponse) xlRange.Cells(iRows, 12).Value = Reponse Call ChercheAttributs(CeFichier, cteArchive, Reponse) xlRange.Cells(iRows, 13).Value = Reponse Call ChercheAttributs(CeFichier, cteLecture, Reponse) xlRange.Cells(iRows, 14).Value = Reponse Call ChercheAttributs(CeFichier, cteRaccourci, Reponse) xlRange.Cells(iRows, 15).Value = Reponse Call ChercheAttributs(CeFichier, cteCompresse, Reponse) xlRange.Cells(iRows, 16).Value = Reponse iRows = (iRows + 1) If (iRows > 65534) Then xlApp.ActiveWorkbook.Worksheets.Add Set xlWKS = xlBook.Worksheets(1) Set xlRange = xlWKS.Range("A1:A65535") iRows = 2 End If End Function ' '(Ligne 385)=================================================================================== ' Function FermetureExcel() xlApp.Visible = True xlWKS.Activate xlRange.Cells(1, 1).Select xlApp.DisplayAlerts = False xlBook.SaveAs Fichier xlApp.Quit xlApp.DisplayAlerts = True Set xlRange = Nothing Set xlChart = Nothing Set xlWKS = Nothing Set xlBook = Nothing Set xlApp = Nothing iRows = 0 iCols = 0 End Function '
Une fois en Excel tu pourra toujours sauvegarder le fichier en HTML.
Cdt
Info