Avatar billede fhansen82 Mester
01. april 2013 - 21:12 Der er 6 kommentarer og
1 løsning

Afvent færdigkørsel af program inden næste startes.

Hej

Har ikke kunnet finde et svar jeg har kunnet få til at virke. Har fundet noget, men jeg bruger det måske forkert.

Jeg har et VB script, hvor jeg gerne vil køre flere Robocopy med disses parametre, og de skal køres én efter én. Min kode ser således ud (mapper er bare eksempler):

Dim objShell
Set objShell = WScript.CreateObject( "WScript.Shell" )
objShell.Run("C:\WINDOWS\System32\Robocopy.exe \\PC\C\teststor\ \\PC\C\teststorkopi /MIR")
objShell.Run("C:\WINDOWS\System32\Robocopy.exe \\PC\C\testlille\ \\PC\C\testlillekopi /MIR")
Set objShell = Nothing

Jeg har fundet ud af at man måske kan benytte:

object
.Run(strCommand, [intWindowStyle], [bWaitOnReturn])

...men er ikke sikker på jeg kan bruge det. Jeg har forsøgt at sætte

, 1, true

i slutningen før )

og jeg har prøvet at sætte

, 1, true

lige efter

("C:\WINDOWS\System32\Robocopy.exe

Jeg får bare fejl. i første forsøg, får jeg at vide at ) ikke kan benyttes (det er den afsluttende parentes). Og i andet forsøg, for jeg at vide at filen ikke findes. Hvad gør jeg galt, og kan ovenstående overhovedet bruges. Alt fra biblioteket skal bare kopieres. Undlader jeg at indsætte den ekstre "vente"-kode, sættes begge Robocopy-instancer i gang (er afprøvet).

Mvh

Frank
Avatar billede arne_v Ekspert
01. april 2013 - 21:18 #1
objShell.Run("C:\WINDOWS\System32\Robocopy.exe \\PC\C\teststor\ \\PC\C\teststorkopi /MIR")

->

objShell.Run("C:\WINDOWS\System32\Robocopy.exe \\PC\C\teststor\ \\PC\C\teststorkopi /MIR",, true)
Avatar billede fhansen82 Mester
01. april 2013 - 21:24 #2
Hej arne_v

Som jeg skrev i mit indlæg er dette prøvet. Jeg modtager følgende fejl:

Der kan ikke bruges parenteser ved kald af en Sub
Avatar billede fhansen82 Mester
01. april 2013 - 21:26 #3
Er det noget med at jeg skal fjerne parenteser og erstatte med et eller andet?
Avatar billede fhansen82 Mester
01. april 2013 - 22:10 #4
Fandt svaret her: http://classicasp.aspfaq.com/general/why-do-i-get-800a0414-errors.html

Jeg indsatte "CALL" (uden anførselstegn) før linjerne som angiver programkørslen.
Avatar billede arne_v Ekspert
01. april 2013 - 22:11 #5
call objShell.Run "C:\WINDOWS\System32\Robocopy.exe \\PC\C\teststor\ \\PC\C\teststorkopi /MIR",, true

maaske
Avatar billede fhansen82 Mester
01. april 2013 - 22:17 #6
Hej arne_v

Du har nok siddet og skrevet, mens jeg afgav et svar. Har løst problemet. Tror også det du skriver måske virker. Kan lige teste det. Men i hvert fald hjalp det at skrive CALL før programkørslen.
Avatar billede fhansen82 Mester
01. april 2013 - 22:18 #7
Har lige testet, og det ser ud til at virke også. Så der er to muligheder så.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester





White paper
Tidsbegrænset kampagne: Overvejer du at udskifte eller tilføje printere i din forretning? Vi kan tilbyde én eller flere maskiner gratis