Bonjour a tous
Je lance un bout de script du genre:
Function ChooseFile()
'Explorateur windows tout OS !! pour selectionner le fichier a traiter
On Error Resume Next
Dim Q2, sRet
Q2 = chr(34)
ChooseFile = ""
Set IE = CreateObject("InternetExplorer.Application")
IE.visible = False
IE.Navigate("about:blank")
Do Until IE.ReadyState = 4
Loop
IE.Document.Write "<HTML><BODY><INPUT ID=" & Q2 & "Fil" & Q2 &
"Type=" & Q2 & "file" & Q2 & "></BODY></HTML>"
With IE.Document.all.Fil
.focus
.click
ChooseFile = .value
End With
IE.Quit
Set IE = Nothing
End Function
fich = ChooseFile()
return_cmd = WSHShell.Run("cmd /c D:\TOTO\TOTO.cmd " & fich & " >
D:\IMPORT\TATA\index.dat",0,True)
If return_cmd = 0 Then
wscript.echo "Le fichier " & fich & " a bien été traité en Index.dat,
" & VBCRLF & VBCRLF & "Vous pouvez lancer l'importation"
wscript.quit
Else
wscript.echo "Une erreur a été détectée dans la conversion CSV to
INDEX dans le fichier " & VBCRLF & VBCRLF & fich
End if
Le pb c'est que la commande TOTO.cmd met plus d'une minute pour
s'executer (car beaucoup de fichier a traiter) et on se demande (cela
est logique) si le soft n'est pas "planté".
Il y a t-il un moyen de dire pendant la commande DOS "traitement en
cour...", voir une animation avec des petits points qui progresse etc..
?
merci et bon Week-end
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
Gilles LAURENT
"---DGI972---" <gilles.dermigny@*NO SPAM*laposte.net> a écrit dans le message de news: | Bonjour a tous
Bonjour,
| Il y a t-il un moyen de dire pendant la commande DOS "traitement en | cour...", voir une animation avec des petits points qui progresse | etc.. ? | merci et bon Week-end
Ci dessous le script VBScript "waitForCompletion.vbs" donné à titre d'exemple qui utilise la méthode Exec de l'objet Shell. Cette méthode permet de lancer une commande externe de manière asynchrone en gardant toutefois la possibilité d'une part de détecter la fin d'exécution du processus et d'autre part de récupérer le code de sortie.
-- Coupez ici : waitForCompletion.vbs --
Option Explicit
' déclaration des variables Dim oSh, oEx
' initialisation Set oSh = CreateObject ("WScript.Shell")
' exécution d'une commande externe Set oEx = oSh.Exec ("%comspec% /c D:VBScriptTest.cmd")
' attente de la fin de la commande externe Do While oEx.Status = 0
' affichage de la progression du traitement WScript.echo Now & ": Work in progress, please wait ..."
' temporisation WScript.Sleep (1000)
Loop
' évaluation du traitement WScript.Echo oEx.ExitCode
-- Coupez ici : waitForCompletion.vbs --
-- Gilles LAURENT Me contacter : http://cerbermail.com/?zoTY7ZkLcD
"---DGI972---" <gilles.dermigny@*NO SPAM*laposte.net> a écrit dans le
message de news:mn.43957d69afb4778c.33554@NOSPAMlaposte.net
| Bonjour a tous
Bonjour,
| Il y a t-il un moyen de dire pendant la commande DOS "traitement en
| cour...", voir une animation avec des petits points qui progresse
| etc.. ?
| merci et bon Week-end
Ci dessous le script VBScript "waitForCompletion.vbs" donné à titre
d'exemple qui utilise la méthode Exec de l'objet Shell. Cette méthode
permet de lancer une commande externe de manière asynchrone en gardant
toutefois la possibilité d'une part de détecter la fin d'exécution du
processus et d'autre part de récupérer le code de sortie.
-- Coupez ici : waitForCompletion.vbs --
Option Explicit
' déclaration des variables
Dim oSh, oEx
' initialisation
Set oSh = CreateObject ("WScript.Shell")
' exécution d'une commande externe
Set oEx = oSh.Exec ("%comspec% /c D:VBScriptTest.cmd")
' attente de la fin de la commande externe
Do While oEx.Status = 0
' affichage de la progression du traitement
WScript.echo Now & ": Work in progress, please wait ..."
' temporisation
WScript.Sleep (1000)
Loop
' évaluation du traitement
WScript.Echo oEx.ExitCode
-- Coupez ici : waitForCompletion.vbs --
--
Gilles LAURENT
Me contacter : http://cerbermail.com/?zoTY7ZkLcD
"---DGI972---" <gilles.dermigny@*NO SPAM*laposte.net> a écrit dans le message de news: | Bonjour a tous
Bonjour,
| Il y a t-il un moyen de dire pendant la commande DOS "traitement en | cour...", voir une animation avec des petits points qui progresse | etc.. ? | merci et bon Week-end
Ci dessous le script VBScript "waitForCompletion.vbs" donné à titre d'exemple qui utilise la méthode Exec de l'objet Shell. Cette méthode permet de lancer une commande externe de manière asynchrone en gardant toutefois la possibilité d'une part de détecter la fin d'exécution du processus et d'autre part de récupérer le code de sortie.
-- Coupez ici : waitForCompletion.vbs --
Option Explicit
' déclaration des variables Dim oSh, oEx
' initialisation Set oSh = CreateObject ("WScript.Shell")
' exécution d'une commande externe Set oEx = oSh.Exec ("%comspec% /c D:VBScriptTest.cmd")
' attente de la fin de la commande externe Do While oEx.Status = 0
' affichage de la progression du traitement WScript.echo Now & ": Work in progress, please wait ..."
' temporisation WScript.Sleep (1000)
Loop
' évaluation du traitement WScript.Echo oEx.ExitCode
-- Coupez ici : waitForCompletion.vbs --
-- Gilles LAURENT Me contacter : http://cerbermail.com/?zoTY7ZkLcD