redirection cmd dans fichier puis exploitation de celui-ci
6 réponses
Trax
Bonjour,
J'utilise une redirection de commande msdos dans un fichier texte,
typiquement :
ipconfig > c:\toto.txt
Ensuite j'ai besoin de lire toto.txt ligne par ligne, seulement il semble y
avoir un problème de format de fichier lors de readline.file il m'indique une
erreur "impossible car fin avant le début..." ou un truc du genre.
qd je créé le txt à la mani celà fonctionne sans problème...
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
jbongran
Trax wrote:
Bonjour,
J'utilise une redirection de commande msdos dans un fichier texte, typiquement :
ipconfig > c:toto.txt
Ensuite j'ai besoin de lire toto.txt ligne par ligne, seulement il semble y avoir un problème de format de fichier lors de readline.file il m'indique une erreur "impossible car fin avant le début..." ou un truc du genre. qd je créé le txt à la mani celà fonctionne sans problème...
need help ! :)
Merci
Code ?
Trax wrote:
Bonjour,
J'utilise une redirection de commande msdos dans un fichier texte,
typiquement :
ipconfig > c:toto.txt
Ensuite j'ai besoin de lire toto.txt ligne par ligne, seulement il
semble y avoir un problème de format de fichier lors de readline.file
il m'indique une erreur "impossible car fin avant le début..." ou un
truc du genre.
qd je créé le txt à la mani celà fonctionne sans problème...
J'utilise une redirection de commande msdos dans un fichier texte, typiquement :
ipconfig > c:toto.txt
Ensuite j'ai besoin de lire toto.txt ligne par ligne, seulement il semble y avoir un problème de format de fichier lors de readline.file il m'indique une erreur "impossible car fin avant le début..." ou un truc du genre. qd je créé le txt à la mani celà fonctionne sans problème...
need help ! :)
Merci
Code ?
Trax
J'ai finalement eu une illumination hier soir :
Set PrinterList = fso.GetFile(PrinterList) Set objPrinterList = PrinterList.OpenAsTextStream(1, -2) Do while objPrinterList.AtEndOfStream <> True ReadLine = objPrinterList.ReadLine
;)
Trax wrote:
Bonjour,
J'utilise une redirection de commande msdos dans un fichier texte, typiquement :
ipconfig > c:toto.txt
Ensuite j'ai besoin de lire toto.txt ligne par ligne, seulement il semble y avoir un problème de format de fichier lors de readline.file il m'indique une erreur "impossible car fin avant le début..." ou un truc du genre. qd je créé le txt à la mani celà fonctionne sans problème...
need help ! :)
Merci
Code ?
J'ai finalement eu une illumination hier soir :
Set PrinterList = fso.GetFile(PrinterList)
Set objPrinterList = PrinterList.OpenAsTextStream(1, -2)
Do while objPrinterList.AtEndOfStream <> True
ReadLine = objPrinterList.ReadLine
;)
Trax wrote:
Bonjour,
J'utilise une redirection de commande msdos dans un fichier texte,
typiquement :
ipconfig > c:toto.txt
Ensuite j'ai besoin de lire toto.txt ligne par ligne, seulement il
semble y avoir un problème de format de fichier lors de readline.file
il m'indique une erreur "impossible car fin avant le début..." ou un
truc du genre.
qd je créé le txt à la mani celà fonctionne sans problème...
Set PrinterList = fso.GetFile(PrinterList) Set objPrinterList = PrinterList.OpenAsTextStream(1, -2) Do while objPrinterList.AtEndOfStream <> True ReadLine = objPrinterList.ReadLine
;)
Trax wrote:
Bonjour,
J'utilise une redirection de commande msdos dans un fichier texte, typiquement :
ipconfig > c:toto.txt
Ensuite j'ai besoin de lire toto.txt ligne par ligne, seulement il semble y avoir un problème de format de fichier lors de readline.file il m'indique une erreur "impossible car fin avant le début..." ou un truc du genre. qd je créé le txt à la mani celà fonctionne sans problème...
need help ! :)
Merci
Code ?
Trax
hum... finalement l'illumination n'a pas été suffisante... voici le code des 2 vbs. Les dim sont bien définis
==== CODE === Set fso = CreateObject("Scripting.FileSystemObject") If (fso.FileExists(Exe)) Then Set objShell = createobject("wscript.shell") ToRun = Exe & " > " & List objShell.exec "cmd /k " & Torun
==== /CODE === ==== CODE 2=== '' Analyse du fichier liste d'imprimantes
Set fso = CreateObject("Scripting.FileSystemObject") If (fso.FileExists(ListFile)) Then
' Ecriture Log objLogFile.WriteLine Now & " : File Exist : " & ListFile & " - Ouverture de celui-ci"
Set objList = fso.GetFile(PrinterList) Set objList = objListFile.OpenAsTextStream(1, -2) Do while objList.AtEndOfStream <> True ReadLine = objList.ReadLine
' Ecriture Log objLogFile.WriteLine Now & " : Ligne lue : " & Readline
==== CODE 2===
J'y ai cru hier soir... mais apparemment non. je ne vois pas ce qui peut bloquer la dessus :s
Trax wrote:
Bonjour,
J'utilise une redirection de commande msdos dans un fichier texte, typiquement :
ipconfig > c:toto.txt
Ensuite j'ai besoin de lire toto.txt ligne par ligne, seulement il semble y avoir un problème de format de fichier lors de readline.file il m'indique une erreur "impossible car fin avant le début..." ou un truc du genre. qd je créé le txt à la mani celà fonctionne sans problème...
need help ! :)
Merci
Code ?
hum... finalement l'illumination n'a pas été suffisante...
voici le code des 2 vbs. Les dim sont bien définis
==== CODE ===
Set fso = CreateObject("Scripting.FileSystemObject")
If (fso.FileExists(Exe)) Then
Set objShell = createobject("wscript.shell")
ToRun = Exe & " > " & List
objShell.exec "cmd /k " & Torun
==== /CODE ===
==== CODE 2===
'' Analyse du fichier liste d'imprimantes
Set fso = CreateObject("Scripting.FileSystemObject")
If (fso.FileExists(ListFile)) Then
' Ecriture Log
objLogFile.WriteLine Now & " : File Exist : " & ListFile & " - Ouverture
de celui-ci"
Set objList = fso.GetFile(PrinterList)
Set objList = objListFile.OpenAsTextStream(1, -2)
Do while objList.AtEndOfStream <> True
ReadLine = objList.ReadLine
' Ecriture Log
objLogFile.WriteLine Now & " : Ligne lue : " & Readline
==== CODE 2===
J'y ai cru hier soir... mais apparemment non.
je ne vois pas ce qui peut bloquer la dessus :s
Trax wrote:
Bonjour,
J'utilise une redirection de commande msdos dans un fichier texte,
typiquement :
ipconfig > c:toto.txt
Ensuite j'ai besoin de lire toto.txt ligne par ligne, seulement il
semble y avoir un problème de format de fichier lors de readline.file
il m'indique une erreur "impossible car fin avant le début..." ou un
truc du genre.
qd je créé le txt à la mani celà fonctionne sans problème...
hum... finalement l'illumination n'a pas été suffisante... voici le code des 2 vbs. Les dim sont bien définis
==== CODE === Set fso = CreateObject("Scripting.FileSystemObject") If (fso.FileExists(Exe)) Then Set objShell = createobject("wscript.shell") ToRun = Exe & " > " & List objShell.exec "cmd /k " & Torun
==== /CODE === ==== CODE 2=== '' Analyse du fichier liste d'imprimantes
Set fso = CreateObject("Scripting.FileSystemObject") If (fso.FileExists(ListFile)) Then
' Ecriture Log objLogFile.WriteLine Now & " : File Exist : " & ListFile & " - Ouverture de celui-ci"
Set objList = fso.GetFile(PrinterList) Set objList = objListFile.OpenAsTextStream(1, -2) Do while objList.AtEndOfStream <> True ReadLine = objList.ReadLine
' Ecriture Log objLogFile.WriteLine Now & " : Ligne lue : " & Readline
==== CODE 2===
J'y ai cru hier soir... mais apparemment non. je ne vois pas ce qui peut bloquer la dessus :s
Trax wrote:
Bonjour,
J'utilise une redirection de commande msdos dans un fichier texte, typiquement :
ipconfig > c:toto.txt
Ensuite j'ai besoin de lire toto.txt ligne par ligne, seulement il semble y avoir un problème de format de fichier lors de readline.file il m'indique une erreur "impossible car fin avant le début..." ou un truc du genre. qd je créé le txt à la mani celà fonctionne sans problème...
need help ! :)
Merci
Code ?
Trax
Bon, je sature! la script semblait correct, mais je suis maintenant confronté à des problèmes d'hétérogénéité du parc... saleté de nt4 ;)
Je vais remonté au probème initial : migrer des imprimantes sur un parc de machine (migrer toutes les imprimantes srv1* vers srv2* )
Il me semblait que celà était faisable facilemnt par script, mais je dois me résoudre...je ne suis pas fait pour ca! lol
Je vais poser ma question sur le forum adequat.
Merci!
Trax wrote:
Bonjour,
J'utilise une redirection de commande msdos dans un fichier texte, typiquement :
ipconfig > c:toto.txt
Ensuite j'ai besoin de lire toto.txt ligne par ligne, seulement il semble y avoir un problème de format de fichier lors de readline.file il m'indique une erreur "impossible car fin avant le début..." ou un truc du genre. qd je créé le txt à la mani celà fonctionne sans problème...
need help ! :)
Merci
Code ?
Bon, je sature!
la script semblait correct, mais je suis maintenant confronté à des
problèmes d'hétérogénéité du parc... saleté de nt4 ;)
Je vais remonté au probème initial : migrer des imprimantes sur un parc de
machine (migrer toutes les imprimantes \srv1* vers \srv2* )
Il me semblait que celà était faisable facilemnt par script, mais je dois me
résoudre...je ne suis pas fait pour ca! lol
Je vais poser ma question sur le forum adequat.
Merci!
Trax wrote:
Bonjour,
J'utilise une redirection de commande msdos dans un fichier texte,
typiquement :
ipconfig > c:toto.txt
Ensuite j'ai besoin de lire toto.txt ligne par ligne, seulement il
semble y avoir un problème de format de fichier lors de readline.file
il m'indique une erreur "impossible car fin avant le début..." ou un
truc du genre.
qd je créé le txt à la mani celà fonctionne sans problème...
Bon, je sature! la script semblait correct, mais je suis maintenant confronté à des problèmes d'hétérogénéité du parc... saleté de nt4 ;)
Je vais remonté au probème initial : migrer des imprimantes sur un parc de machine (migrer toutes les imprimantes srv1* vers srv2* )
Il me semblait que celà était faisable facilemnt par script, mais je dois me résoudre...je ne suis pas fait pour ca! lol
Je vais poser ma question sur le forum adequat.
Merci!
Trax wrote:
Bonjour,
J'utilise une redirection de commande msdos dans un fichier texte, typiquement :
ipconfig > c:toto.txt
Ensuite j'ai besoin de lire toto.txt ligne par ligne, seulement il semble y avoir un problème de format de fichier lors de readline.file il m'indique une erreur "impossible car fin avant le début..." ou un truc du genre. qd je créé le txt à la mani celà fonctionne sans problème...
need help ! :)
Merci
Code ?
jbongran
Trax wrote:
hum... finalement l'illumination n'a pas été suffisante... voici le code des 2 vbs. Les dim sont bien définis
==== CODE === > Set fso = CreateObject("Scripting.FileSystemObject") If (fso.FileExists(Exe)) Then Set objShell = createobject("wscript.shell") ToRun = Exe & " > " & List objShell.exec "cmd /k " & Torun
==== /CODE === > ==== CODE 2=== > '' Analyse du fichier liste d'imprimantes
Set fso = CreateObject("Scripting.FileSystemObject") If (fso.FileExists(ListFile)) Then
' Ecriture Log objLogFile.WriteLine Now & " : File Exist : " & ListFile & " - Ouverture de celui-ci"
Set objList = fso.GetFile(PrinterList) Set objList = objListFile.OpenAsTextStream(1, -2) Do while objList.AtEndOfStream <> True ReadLine = objList.ReadLine
' Ecriture Log objLogFile.WriteLine Now & " : Ligne lue : " & Readline
==== CODE 2=== >
J'y ai cru hier soir... mais apparemment non. je ne vois pas ce qui peut bloquer la dessus :s
Trax wrote:
Bonjour,
J'utilise une redirection de commande msdos dans un fichier texte, typiquement :
ipconfig > c:toto.txt
Ensuite j'ai besoin de lire toto.txt ligne par ligne, seulement il semble y avoir un problème de format de fichier lors de readline.file il m'indique une erreur "impossible car fin avant le début..." ou un truc du genre. qd je créé le txt à la mani celà fonctionne sans problème...
need help ! :)
Merci
Code ?
Ci-dessous un exemple pour lire le fichier généré par ipconfig; A noter que les retours lignes sont des retours chariot (vbCr) et non des retours chariot suivis d'un saut de ligne (VBCrLf). Voir aussi ces deux scripts de notre gourou JCB, qui aident souvent dans les cas comme celui-ci http://bellamyjc.org/fr/vbsdownload.html#ansi2oem http://bellamyjc.org/fr/vbsdownload.html#oem2ansi
Sub RunRedirect(strExeName, strOutFile) Dim WShell, fso, f, strLine, strTemp, sep Set WShell = CreateObject("WScript.Shell") WShell.Run "%COMSPEC% /C " & strExeName & " > " & strOutFile, 1, 0 Set WShell = Nothing sep = "" Set fso = CreateObject("Scripting.FileSystemObject") Set f = fso.OpenTextFile(strOutFile, 1, False, -2) Do While Not f.AtEndOfStream strLine = Replace( Trim(f.ReadLine()), VbCr, "") If Len(strLine) > 0 Then strTemp = strTemp & sep & strLine sep = VbCrLf End If Loop WScript.Echo strTemp f.Close Set f = Nothing fso.DeleteFile strOutFile Set fso = Nothing End Sub
Call RunRedirect("ipconfig", "d:testtoto.txt")
Trax wrote:
hum... finalement l'illumination n'a pas été suffisante...
voici le code des 2 vbs. Les dim sont bien définis
==== CODE === >
Set fso = CreateObject("Scripting.FileSystemObject")
If (fso.FileExists(Exe)) Then
Set objShell = createobject("wscript.shell")
ToRun = Exe & " > " & List
objShell.exec "cmd /k " & Torun
==== /CODE === >
==== CODE 2=== >
'' Analyse du fichier liste d'imprimantes
Set fso = CreateObject("Scripting.FileSystemObject")
If (fso.FileExists(ListFile)) Then
' Ecriture Log
objLogFile.WriteLine Now & " : File Exist : " & ListFile & " -
Ouverture de celui-ci"
Set objList = fso.GetFile(PrinterList)
Set objList = objListFile.OpenAsTextStream(1, -2)
Do while objList.AtEndOfStream <> True
ReadLine = objList.ReadLine
' Ecriture Log
objLogFile.WriteLine Now & " : Ligne lue : " & Readline
==== CODE 2=== >
J'y ai cru hier soir... mais apparemment non.
je ne vois pas ce qui peut bloquer la dessus :s
Trax wrote:
Bonjour,
J'utilise une redirection de commande msdos dans un fichier texte,
typiquement :
ipconfig > c:toto.txt
Ensuite j'ai besoin de lire toto.txt ligne par ligne, seulement il
semble y avoir un problème de format de fichier lors de
readline.file il m'indique une erreur "impossible car fin avant le
début..." ou un truc du genre.
qd je créé le txt à la mani celà fonctionne sans problème...
need help ! :)
Merci
Code ?
Ci-dessous un exemple pour lire le fichier généré par ipconfig;
A noter que les retours lignes sont des retours chariot (vbCr) et non des
retours chariot suivis d'un saut de ligne (VBCrLf).
Voir aussi ces deux scripts de notre gourou JCB, qui aident souvent dans les
cas comme celui-ci
http://bellamyjc.org/fr/vbsdownload.html#ansi2oem
http://bellamyjc.org/fr/vbsdownload.html#oem2ansi
Sub RunRedirect(strExeName, strOutFile)
Dim WShell, fso, f, strLine, strTemp, sep
Set WShell = CreateObject("WScript.Shell")
WShell.Run "%COMSPEC% /C " & strExeName & " > " & strOutFile, 1, 0
Set WShell = Nothing
sep = ""
Set fso = CreateObject("Scripting.FileSystemObject")
Set f = fso.OpenTextFile(strOutFile, 1, False, -2)
Do While Not f.AtEndOfStream
strLine = Replace( Trim(f.ReadLine()), VbCr, "")
If Len(strLine) > 0 Then
strTemp = strTemp & sep & strLine
sep = VbCrLf
End If
Loop
WScript.Echo strTemp
f.Close
Set f = Nothing
fso.DeleteFile strOutFile
Set fso = Nothing
End Sub
hum... finalement l'illumination n'a pas été suffisante... voici le code des 2 vbs. Les dim sont bien définis
==== CODE === > Set fso = CreateObject("Scripting.FileSystemObject") If (fso.FileExists(Exe)) Then Set objShell = createobject("wscript.shell") ToRun = Exe & " > " & List objShell.exec "cmd /k " & Torun
==== /CODE === > ==== CODE 2=== > '' Analyse du fichier liste d'imprimantes
Set fso = CreateObject("Scripting.FileSystemObject") If (fso.FileExists(ListFile)) Then
' Ecriture Log objLogFile.WriteLine Now & " : File Exist : " & ListFile & " - Ouverture de celui-ci"
Set objList = fso.GetFile(PrinterList) Set objList = objListFile.OpenAsTextStream(1, -2) Do while objList.AtEndOfStream <> True ReadLine = objList.ReadLine
' Ecriture Log objLogFile.WriteLine Now & " : Ligne lue : " & Readline
==== CODE 2=== >
J'y ai cru hier soir... mais apparemment non. je ne vois pas ce qui peut bloquer la dessus :s
Trax wrote:
Bonjour,
J'utilise une redirection de commande msdos dans un fichier texte, typiquement :
ipconfig > c:toto.txt
Ensuite j'ai besoin de lire toto.txt ligne par ligne, seulement il semble y avoir un problème de format de fichier lors de readline.file il m'indique une erreur "impossible car fin avant le début..." ou un truc du genre. qd je créé le txt à la mani celà fonctionne sans problème...
need help ! :)
Merci
Code ?
Ci-dessous un exemple pour lire le fichier généré par ipconfig; A noter que les retours lignes sont des retours chariot (vbCr) et non des retours chariot suivis d'un saut de ligne (VBCrLf). Voir aussi ces deux scripts de notre gourou JCB, qui aident souvent dans les cas comme celui-ci http://bellamyjc.org/fr/vbsdownload.html#ansi2oem http://bellamyjc.org/fr/vbsdownload.html#oem2ansi
Sub RunRedirect(strExeName, strOutFile) Dim WShell, fso, f, strLine, strTemp, sep Set WShell = CreateObject("WScript.Shell") WShell.Run "%COMSPEC% /C " & strExeName & " > " & strOutFile, 1, 0 Set WShell = Nothing sep = "" Set fso = CreateObject("Scripting.FileSystemObject") Set f = fso.OpenTextFile(strOutFile, 1, False, -2) Do While Not f.AtEndOfStream strLine = Replace( Trim(f.ReadLine()), VbCr, "") If Len(strLine) > 0 Then strTemp = strTemp & sep & strLine sep = VbCrLf End If Loop WScript.Echo strTemp f.Close Set f = Nothing fso.DeleteFile strOutFile Set fso = Nothing End Sub
Call RunRedirect("ipconfig", "d:testtoto.txt")
Trax
Merci pour l'info :)
Trax wrote:
hum... finalement l'illumination n'a pas été suffisante... voici le code des 2 vbs. Les dim sont bien définis
==== CODE === > > Set fso = CreateObject("Scripting.FileSystemObject") If (fso.FileExists(Exe)) Then Set objShell = createobject("wscript.shell") ToRun = Exe & " > " & List objShell.exec "cmd /k " & Torun
==== /CODE === > > ==== CODE 2=== > > '' Analyse du fichier liste d'imprimantes
Set fso = CreateObject("Scripting.FileSystemObject") If (fso.FileExists(ListFile)) Then
' Ecriture Log objLogFile.WriteLine Now & " : File Exist : " & ListFile & " - Ouverture de celui-ci"
Set objList = fso.GetFile(PrinterList) Set objList = objListFile.OpenAsTextStream(1, -2) Do while objList.AtEndOfStream <> True ReadLine = objList.ReadLine
' Ecriture Log objLogFile.WriteLine Now & " : Ligne lue : " & Readline
==== CODE 2=== > >
J'y ai cru hier soir... mais apparemment non. je ne vois pas ce qui peut bloquer la dessus :s
Trax wrote:
Bonjour,
J'utilise une redirection de commande msdos dans un fichier texte, typiquement :
ipconfig > c:toto.txt
Ensuite j'ai besoin de lire toto.txt ligne par ligne, seulement il semble y avoir un problème de format de fichier lors de readline.file il m'indique une erreur "impossible car fin avant le début..." ou un truc du genre. qd je créé le txt à la mani celà fonctionne sans problème...
need help ! :)
Merci
Code ?
Ci-dessous un exemple pour lire le fichier généré par ipconfig; A noter que les retours lignes sont des retours chariot (vbCr) et non des retours chariot suivis d'un saut de ligne (VBCrLf). Voir aussi ces deux scripts de notre gourou JCB, qui aident souvent dans les cas comme celui-ci http://bellamyjc.org/fr/vbsdownload.html#ansi2oem http://bellamyjc.org/fr/vbsdownload.html#oem2ansi
Sub RunRedirect(strExeName, strOutFile) Dim WShell, fso, f, strLine, strTemp, sep Set WShell = CreateObject("WScript.Shell") WShell.Run "%COMSPEC% /C " & strExeName & " > " & strOutFile, 1, 0 Set WShell = Nothing sep = "" Set fso = CreateObject("Scripting.FileSystemObject") Set f = fso.OpenTextFile(strOutFile, 1, False, -2) Do While Not f.AtEndOfStream strLine = Replace( Trim(f.ReadLine()), VbCr, "") If Len(strLine) > 0 Then strTemp = strTemp & sep & strLine sep = VbCrLf End If Loop WScript.Echo strTemp f.Close Set f = Nothing fso.DeleteFile strOutFile Set fso = Nothing End Sub
Call RunRedirect("ipconfig", "d:testtoto.txt")
Merci pour l'info :)
Trax wrote:
hum... finalement l'illumination n'a pas été suffisante...
voici le code des 2 vbs. Les dim sont bien définis
==== CODE === > >
Set fso = CreateObject("Scripting.FileSystemObject")
If (fso.FileExists(Exe)) Then
Set objShell = createobject("wscript.shell")
ToRun = Exe & " > " & List
objShell.exec "cmd /k " & Torun
==== /CODE === > >
==== CODE 2=== > >
'' Analyse du fichier liste d'imprimantes
Set fso = CreateObject("Scripting.FileSystemObject")
If (fso.FileExists(ListFile)) Then
' Ecriture Log
objLogFile.WriteLine Now & " : File Exist : " & ListFile & " -
Ouverture de celui-ci"
Set objList = fso.GetFile(PrinterList)
Set objList = objListFile.OpenAsTextStream(1, -2)
Do while objList.AtEndOfStream <> True
ReadLine = objList.ReadLine
' Ecriture Log
objLogFile.WriteLine Now & " : Ligne lue : " & Readline
==== CODE 2=== > >
J'y ai cru hier soir... mais apparemment non.
je ne vois pas ce qui peut bloquer la dessus :s
Trax wrote:
Bonjour,
J'utilise une redirection de commande msdos dans un fichier texte,
typiquement :
ipconfig > c:toto.txt
Ensuite j'ai besoin de lire toto.txt ligne par ligne, seulement il
semble y avoir un problème de format de fichier lors de
readline.file il m'indique une erreur "impossible car fin avant le
début..." ou un truc du genre.
qd je créé le txt à la mani celà fonctionne sans problème...
need help ! :)
Merci
Code ?
Ci-dessous un exemple pour lire le fichier généré par ipconfig;
A noter que les retours lignes sont des retours chariot (vbCr) et non des
retours chariot suivis d'un saut de ligne (VBCrLf).
Voir aussi ces deux scripts de notre gourou JCB, qui aident souvent dans les
cas comme celui-ci
http://bellamyjc.org/fr/vbsdownload.html#ansi2oem
http://bellamyjc.org/fr/vbsdownload.html#oem2ansi
Sub RunRedirect(strExeName, strOutFile)
Dim WShell, fso, f, strLine, strTemp, sep
Set WShell = CreateObject("WScript.Shell")
WShell.Run "%COMSPEC% /C " & strExeName & " > " & strOutFile, 1, 0
Set WShell = Nothing
sep = ""
Set fso = CreateObject("Scripting.FileSystemObject")
Set f = fso.OpenTextFile(strOutFile, 1, False, -2)
Do While Not f.AtEndOfStream
strLine = Replace( Trim(f.ReadLine()), VbCr, "")
If Len(strLine) > 0 Then
strTemp = strTemp & sep & strLine
sep = VbCrLf
End If
Loop
WScript.Echo strTemp
f.Close
Set f = Nothing
fso.DeleteFile strOutFile
Set fso = Nothing
End Sub
hum... finalement l'illumination n'a pas été suffisante... voici le code des 2 vbs. Les dim sont bien définis
==== CODE === > > Set fso = CreateObject("Scripting.FileSystemObject") If (fso.FileExists(Exe)) Then Set objShell = createobject("wscript.shell") ToRun = Exe & " > " & List objShell.exec "cmd /k " & Torun
==== /CODE === > > ==== CODE 2=== > > '' Analyse du fichier liste d'imprimantes
Set fso = CreateObject("Scripting.FileSystemObject") If (fso.FileExists(ListFile)) Then
' Ecriture Log objLogFile.WriteLine Now & " : File Exist : " & ListFile & " - Ouverture de celui-ci"
Set objList = fso.GetFile(PrinterList) Set objList = objListFile.OpenAsTextStream(1, -2) Do while objList.AtEndOfStream <> True ReadLine = objList.ReadLine
' Ecriture Log objLogFile.WriteLine Now & " : Ligne lue : " & Readline
==== CODE 2=== > >
J'y ai cru hier soir... mais apparemment non. je ne vois pas ce qui peut bloquer la dessus :s
Trax wrote:
Bonjour,
J'utilise une redirection de commande msdos dans un fichier texte, typiquement :
ipconfig > c:toto.txt
Ensuite j'ai besoin de lire toto.txt ligne par ligne, seulement il semble y avoir un problème de format de fichier lors de readline.file il m'indique une erreur "impossible car fin avant le début..." ou un truc du genre. qd je créé le txt à la mani celà fonctionne sans problème...
need help ! :)
Merci
Code ?
Ci-dessous un exemple pour lire le fichier généré par ipconfig; A noter que les retours lignes sont des retours chariot (vbCr) et non des retours chariot suivis d'un saut de ligne (VBCrLf). Voir aussi ces deux scripts de notre gourou JCB, qui aident souvent dans les cas comme celui-ci http://bellamyjc.org/fr/vbsdownload.html#ansi2oem http://bellamyjc.org/fr/vbsdownload.html#oem2ansi
Sub RunRedirect(strExeName, strOutFile) Dim WShell, fso, f, strLine, strTemp, sep Set WShell = CreateObject("WScript.Shell") WShell.Run "%COMSPEC% /C " & strExeName & " > " & strOutFile, 1, 0 Set WShell = Nothing sep = "" Set fso = CreateObject("Scripting.FileSystemObject") Set f = fso.OpenTextFile(strOutFile, 1, False, -2) Do While Not f.AtEndOfStream strLine = Replace( Trim(f.ReadLine()), VbCr, "") If Len(strLine) > 0 Then strTemp = strTemp & sep & strLine sep = VbCrLf End If Loop WScript.Echo strTemp f.Close Set f = Nothing fso.DeleteFile strOutFile Set fso = Nothing End Sub