Salut tout le monde;
Le code suivant marche (tant bien que mal) sauf que les résultats affichés par MsgBox puis par un éditeur de texte (Notepad) sont différents.
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
Option Explicit
 
dim WS,fd,S,I,cnt,fso,f,n,St
 
set WS=WScript.CreateObject("WScript.Shell")
cnt=ws.specialfolders.count
Message
Ecrire
Voir
Nettoyer
 
'=========================================
function LeftZero(n)
  s="" 
  If n<=9 then 
      s="0"+cstr(n)
   elseif n>=10 then
      s=cstr(n)
   end if
 LeftZero=s
 
end function
 
'  ============= Affichage avec MsgBox ==================
Sub Message()
       For I=0 to cnt-1
          St=St+ LeftZero(I) + vbtab +":   " + WS.SpecialFolders(I) + vbnewline
       Next
       MsgBox St
End Sub
'================== Ecriture du résultat dans un fichier texte =============
Sub Ecrire()
	set fso = createobject("Scripting.FileSystemObject")
	set f   = fso.CreateTextFile("SpecFold.txt",true)
	f.Write St
	f.close
End Sub
'======================Affichage du texte ==========================
Sub Voir()
        dim Affich
	Affich="CMD /c %Windir%\System32\NotePad.exe SpecFold.txt"
	Ws.Run Affich,0,true
End Sub
' ========================= Nettoyage ================
Sub Nettoyer()
	set f=fso.getfile("SpecFold.txt")
	f.delete   ' Le fichier ne sera supprimé que si l'on ferme la fenêtre Wordpad
	set fso=nothing
	set ws=nothing
End Sub
Comment peut-on expliquer cette différence ?
J'ai même changé l'ordre d'affichage : Texte puis MsgBox mais rien n'y fait.
Avec mes remerciements anticipés.