Avatar billede steffansp Nybegynder
06. september 2010 - 22:03 Der er 2 kommentarer og
1 løsning

Benyt argument input

Hej,
Jeg kører et batch script der skal eksekveres således af et program:
Kør:
Program: C:\windows\system32\wscript.exe
arugmentter:
"C:\invisible.vbs" "D:\remove_files.bat" "%S"

Førstnævnte gør batfilen usynlig og sidstenævnte er et argument der skal bruges i bat filen.

Hvordan skal batch filen se ud så? Dette er hvordan den normalt ser ud hvis 1 argument bruges. Har prøvet at skifte til %2, men uden held.

rmdir %1 /S /Q

så %S skal være %1.

Følgende virker ikke, da argumenttet kommer fra første program.
rmdir %S /S /Q

Nogen der kan hjælpe med dette?
Avatar billede steffansp Nybegynder
07. september 2010 - 09:10 #1
Ok, jeg har fundet ud af at problemet ligger i at argumentet ikke gives til bat filen. Dette er muligt med:

set args = WScript.Arguments
num = args.Count

if num = 0 then
    WScript.Echo "Usage: [CScript | WScript] invis.vbs aScript.bat <some script arguments>"
    WScript.Quit 1
end if

sargs = ""
if num > 1 then
    sargs = " "
    for k = 1 to num - 1
        anArg = args.Item(k)
        sargs = sargs & anArg & " "
    next
end if

Set WshShell = WScript.CreateObject("WScript.Shell")

WshShell.Run """" & WScript.Arguments(0) & """" & sargs, 0, False


og dog virker "C:\Ny mappe" ikke, da den ikke kan lide mellemrum
Avatar billede steffansp Nybegynder
07. september 2010 - 09:16 #2
Tråden burde nok flyttet til visual basic istedet for andre nu
Avatar billede steffansp Nybegynder
08. september 2010 - 20:40 #3
løsningen var at smide """" & ind :) lukkes
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