Avatar billede rebakr Nybegynder
08. december 2009 - 10:47 Der er 1 løsning

Problemer med et script til SyncToy

Hej!

Jeg har en del af et størrer script til backup, som giver mig lidt problemer. Jeg skal bruge SyncToy til at "backup" filer fra laptops til en central server. I den del af scriptet der omhandler SyncToy skal jeg have SyncToy til at tilgå en bestemt sti på serveren. Stien på serveren er opbygget af brugernavn på den bruger der er logget på laptoppen + navnet på selve laptoppen. Men jeg kan ikke få SyncToy til at forstå at den skal bruge brugernavn og PCnavn som en del af stien. Kan jeg på nogen måde lave nogle parameter som kan bruges i stien?

Her er koden.

Set ObjFSO = CreateObject("Scripting.FileSystemObject")
Set ObjNet = CreateObject("WScript.Network")

Dim strPCname, strUsername
StrPCname = ObjNet.ComputerName
StrUsername = ObjNet.UserName

'Kode til at kunne starte et program længere nede i koden, med kommandoen "shell "C:\dddd\dddd\dddd\ddd.exe"
sub shell(cmd)
dim objShell
Set objShell = WScript.CreateObject( "WScript.Shell" )
objShell.Run(cmd)
Set objShell = Nothing
end sub

'Denne sti virker fint da jeg direkte skirver bruger- og PCnavn
shell "C:\SyncToy\SyncToy.exe  -d(left=C:\mappe1,right=U:\PJJ\WMEDB81\,name=test,operation=Echo)"

'Denne sti virker ikke!!!!
shell "C:\SyncToy\SyncToy.exe  -d(left=C:\mappe1,right=U:\StrUsername\StrPCname\,name=test,operation=Echo)"

shell """C:\SyncToy\SyncToyCmd.exe"" -Rtest"
Avatar billede morten_leth Nybegynder
08. december 2009 - 21:48 #1
Hey Rebakr

Jeg er ikke nogen wiz ud i scripting men tror dog alligevel godt jeg kan hjælpe dig.

Umiddelbart ser dit problem ud til at være at du har glemt at skrive dine variabler ind.

Prøv dette i stedet...

Set ObjFSO = CreateObject("Scripting.FileSystemObject")
Set ObjNet = CreateObject("WScript.Network")

Dim strPCname, strUsername
StrPCname = ObjNet.ComputerName
StrUsername = ObjNet.UserName

'Kode til at kunne starte et program længere nede i koden, med kommandoen "shell "C:\dddd\dddd\dddd\ddd.exe"
sub shell(cmd)
dim objShell
Set objShell = WScript.CreateObject( "WScript.Shell" )
objShell.Run(cmd)
Set objShell = Nothing
end sub

'Denne sti virker fint da jeg direkte skirver bruger- og PCnavn
shell "C:\SyncToy\SyncToy.exe  -d(left=C:\mappe1,right=U:\PJJ\WMEDB81\,name=test,operation=Echo)"

'Denne sti virker ikke!!!!
shell "C:\SyncToy\SyncToy.exe  -d(left=C:\mappe1,right=U:\" & StrUsername & "\" & StrPCname & "\,name=test,operation=Echo)"

shell """C:\SyncToy\SyncToyCmd.exe"" -Rtest"
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