Bonjour à tous,

Suite au sujet BATCH je renouvelle ma demande en VBS cette fois pour le problème suivant:

Je voulais en parcourant un fichier d'enregistrements de ma bibliothèque musicale appelé Musique.m3u créer une liste aléatoire Alealiste.m3u du contenu de ce fichier, car à l'origine, le contenu du fichier m3u est classé en suivant l'arborescence du dossier Ma Musique. Ma Musique\Artiste\Album\Musique.mp3 ou autres formats.

Donc j'ai un batch qui génère le fichier Musique.m3u.
Ici, il faudrait quelque chose de ce genre mais en VBS et non en batch, mais je ne connais rien au VBS . Ce batch est très bien fait, mais pose un problème de lenteur dans le cas d'un fichier Musique.m3u volumineux (Supérieur à 4000 lignes).


Le code BATCH ci-dessous est de Monsieur Sachadee, que je salut au passage, c'est un code très bien fait affichant deux compteurs pour afficher l'avancement du traitement aléatoire pour l'enrichissement de out.txt que je transforme ensuite en Alealiste.m3u.
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
 
@echo off
setlocal enabledelayedexpansion
SET "nblines="
set "$cc=1"
 
del out.txt 2>nul
 
FOR /F "delims=" %%I IN (Musique.m3u) DO SET /a nblines+=1
 
 
for /l %%a in (1=1=%nblines%) do (
	set /a $random=!random! %%%nblines% +1
	call:TestRandom %%a)
 
move out.txt Musique.m3u 2>nul
exit/b
 
:TestRandom
if defined ##!$random! (
   set /a $random=!random! %%%nblines% +1
   goto:TestRandom
) else (cls&echo Traitement de [!$cc!/%nblines%]
		set ##!$random!=1
		set $c=1
        for /f "delims=" %%b in (Musique.m3u) do (
            if !$random!==!$c! echo %%b>>out.txt
		    set /a $c+=1
        )
		set /a $cc+=1
		)
Si un génie du code VBS pouvait m'aider, ce serait super.
Merci par avance de l'aide apporté.