Bonjour je me butte depuis quelques heure sur un problème sur XP (n'étant pas très habitué aux scripts dos)

Je cherche d'utiliser l'équivalent de %VAR:~0,10% dans le DO d'un FOR.

Mais sans succès....

le code ci-dessous n'a pas beaucoup d'intérêt, c'est juste un test pour comrpendre le fonctionnement avant de l'intégrer dans le script final.

il fait juste ceci:

- parcours des répertoires et sous répertoires du répertoire courant.
- définition de la variable len à 10 (sera remplacé par la suite par autre chose (c'est pour çà que çà reste dans la boucle)
- j'affiche la valeur de len
- je définis B : %%A
- j'affiche la valeur de B
- j'essaie d'extraire les "len" premiers caractères de B dans C
- j'affiche la valeur de C

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
@ECHO off
setlocal enabledelayedexpansion

FOR /F "usebackq delims==" %%A IN (` DIR /S /B /AD *.* `) do (
	
	set /a len=10
	echo len !len!

	set B=%%A
        echo B !B!

        set C=!B:~0,!len!!
        echo C !C!
  
)
a l'exécution je recois ceci en retour

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
len 10
B C:\Documents and Settings\joell\Bureau\A
C len
len 10
B C:\Documents and Settings\joell\Bureau\A\A
C len
len 10
B C:\Documents and Settings\joell\Bureau\A\B
C len
j'ai déjà essayé de remplacer set par set j'obtiens alors
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
len 10
B C:\Documents and Settings\joell\Bureau\A
C 10
len 10
B C:\Documents and Settings\joell\Bureau\A\A
C 10
len 10
B C:\Documents and Settings\joell\Bureau\A\B
C 10
quelqu'un aurait'il la solution ???
merci

joel