Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst Robocopy in VB Script einbinden

Mitglied: fraggle666

fraggle666 (Level 1) - Jetzt verbinden

17.04.2008, aktualisiert 11:23 Uhr, 15583 Aufrufe, 10 Kommentare

Guten Morgen zusammen,

ich hoffe ihr könnt mir helfen...

Ich versuche mittels einem VB Script eine Programm zu starten. Soweit so gut, das klappt alles.
Allerdings muss nun noch in diesem Script ein Robocopy Befehl eingebunden werden, der noch vor dem Start des Programms einen Ordner, falls noch nicht vorhanden, in das User Profil kopiert.

Mit Hilfe von Google, habe ich folgendes zusammengeschrieben:

IF NOT (fs.folderExists("%USERPROFILE%\Application Data\Quest Software")) THEN
Set objShell = CreateObject("Wscript.Shell")
objSource = InputBox("K:\Program Files\Quest Software\Toad for Oracle\USERPROFILE\Application Data\Quest Software")
objDestination = InputBox("%USERPROFILE%\Application Data\Quest Software")
objCommand = "RoboCopy.Exe " & Chr(34) & objSource & Chr(34) & " " & Chr(34) & objDestination & Chr(34) & " /MIR"
objShell.Run(objCommand)
END if

(Das ist nur der Teil mit Robocopy, der Rest funktioniert alles)




Wenn ich das Script ausführe, kommt folgende Meldung:

c2f33d328d7e59ddf12e50b92e62d13d-unbenannt - Klicke auf das Bild, um es zu vergrößern


Nach einbinden der Zeile von Tacker kommt folgende Meldung:
b6d3f1f9645914ff7dc173b7c4c00f99-fenster - Klicke auf das Bild, um es zu vergrößern

Habt ihr eine Idee?
Mitglied: tacker
17.04.2008 um 09:50 Uhr
Salü

evtl ma folgende Zeile voranhängen..

01.
set fs = createobject("scripting.filesystemobject")
Gruss tacker
Bitte warten ..
Mitglied: fraggle666
17.04.2008 um 09:52 Uhr
Hab das ganze wohl zu kompliziert gemacht.
Anscheinend soll es auch so funktionieren:

IF NOT (fs.folderExists("%USERPROFILE%\Application Data\Quest Software")) THEN
ROBO ="K:\Program Files\batch\robocopy.exe"
erg = WshShell.Exec("ROBO "K:\Program Files\Quest Software\Toad for Oracle\USERPROFILE\Application Data\Quest Software" "%USERPROFILE%\Application Data\Quest Software" /MIR")
END if

Aber da bekomme ich nun den Fehler, das ein ")" expecxted wird

Führe ich nur diesen Befehl aus, startet er das Robocopy, allerdings ohne meine Robocopy Befehle auszuführen...
erg = WshShell.Exec(ROBO)

Zu Hülf!
Bitte warten ..
Mitglied: fraggle666
17.04.2008 um 09:59 Uhr
Hm,

hab die Zeile von dir nun angehängt und bekomme zwei Fenster wenn ich das Script ausführe.
(Bild habe ich ganz oben wieder eingefügt)

Wenn ich die Fenster mit ok bestätige, startet er mein Programm, allerdings ohne vorher Robocopy auszuführen

Ich muss noch dazu sagen, dass ich mich absolut überhaupt nicht mit VB auskenne. Ich bin froh wenn ich eine funktionierende Batch hinbekomme
Bitte warten ..
Mitglied: bastla
17.04.2008 um 10:01 Uhr
Hallo fraggle666!

Ungetestet etwa so:
01.
IF NOT (fs.folderExists("%USERPROFILE%\Application Data\Quest Software")) THEN 
02.
	ROBO ="K:\Program Files\batch\robocopy.exe" 
03.
	erg = WshShell.Exec("ROBO ""K:\Program Files\Quest Software\Toad for Oracle\USERPROFILE\Application Data\Quest Software"" ""%USERPROFILE%\Application Data\Quest Software"" /MIR") 
04.
END if
Grüße
bastla

P.S.: Tust Du uns allen bitte den Gefallen, Scripts beim Posten unter <code>-Tags zu stellen?
Bitte warten ..
Mitglied: tacker
17.04.2008 um 10:02 Uhr
nochma von vorn

01.
set fs = createobject("scripting.filesystemobject") 
02.
set WshShell = createobject("wscript.shell") 
03.
IF NOT (fs.folderExists("%USERPROFILE%\Application Data\Quest Software")) THEN 
04.
ROBO ="K:\Program Files\batch\robocopy.exe " 
05.
source = "K:\Program Files\Quest Software\Toad for Oracle\USERPROFILE\Application Data\Quest Software " 
06.
target = "%USERPROFILE%\Application Data\Quest Software " 
07.
parameter = "/MIR" 
08.
erg = WshShell.Run(ROBO & source &  target & parameter)  
09.
END if
Bitte warten ..
Mitglied: fraggle666
17.04.2008 um 10:29 Uhr
Also beide Scripte bringen nun keine Fehlermeldung mehr,

allerdings ignorieren auch beide das Robocopy. Es startet kein Kopiervorgang

Ich habe nochmal alle Pfade geprüft:

Das Robocopy liegt unter K:\Program Files\batch\robocopy.exe

Das Verzeichnis "Quest Software" das ich kopieren bzw. spiegeln möchte, liegt unter "K:\Program Files\Quest Software\Toad for Oracle\USERPROFILE\Application Data\Quest Software"

Das Zielverzeichnis "%USERPROFILE%\Application Data\" existiert.
Bitte warten ..
Mitglied: bastla
17.04.2008 um 10:59 Uhr
@fraggle666

Sorry, hatte zu kurz drübergeschaut - da ja im Pfad zu "Robocopy" ebenfalls Leerzeichen enthalten sind, müsste das eher so aussehen:
01.
ROBO = """K:\Program Files\batch\robocopy.exe"" " 
02.
erg = WshShell.Exec(ROBO & """K:\Program Files\Quest Software\Toad for Oracle\USERPROFILE\Application Data\Quest Software"" ""%USERPROFILE%\Application Data\Quest Software"" /MIR")
Ein Detail am Rande (und nicht verantwortlich für das "Robocopy"-Startproblem):
Das Zielverzeichnis "%USERPROFILE%\Application Data\" existiert.
... sollte aber besser so angesprochen werden:
01.
IF NOT (fs.folderExists(WshShell.ExpandEnvironmentStrings("%APPDATA%\Quest Software"))) THEN
In der per "Exec" geöffneten Shell stehen %USERPROFILE% oder %APPDATA% zur Verfügung, in VBS müssen sie aber aufgelöst werden.

Grüße
bastla
Bitte warten ..
Mitglied: fraggle666
17.04.2008 um 11:10 Uhr
Hey!

Es hat funktioniert! Ich bin begeistert
Auf
<IF NOT (fs.folderExists(WshShell.ExpandEnvironmentStrings("%APPDATA%\Quest Software"))) THEN>
wäre ich nie gekommen...

Vielen Dank euch beiden!
Bitte warten ..
Mitglied: bastla
17.04.2008 um 11:18 Uhr
@fraggle666

Freut mich, dass wir das mit vereinten Kräften geschafft haben ...

Vielleicht nochmals der Hinweis auf die Formatierung beim Posten: Wenn Du Dein Script (Deine Scriptzeile) zwischen < code> und < /code> (jeweils ohne Leerzeichen) stellst, wird es als Codeblock dargestellt.

Grüße
bastla
Bitte warten ..
Mitglied: fraggle666
17.04.2008 um 11:23 Uhr
01.
 Testcode 
Alles klar, das werde ich das nächste mal beherzigen
Bitte warten ..
Ähnliche Inhalte
VB for Applications

VB-Script in VB-Script starten und Parameter übergeben

gelöst Frage von denkisVB for Applications7 Kommentare

Hallo liebe Scriptgemeinde, ich muss mehrere Rechner für den Übergang in eine neue Domäne vorbereiten. Dafür sind drei wesentliche ...

Batch & Shell

Robocopy Backup Script

Tipp von kunert0345Batch & Shell9 Kommentare

Backupscript zum Erstellen monatlicher Backups und zur täglichen Aktualisierung der monatlichen Backups:

Windows Tools

Robocopy-Batch lässt sich per VB-Script über Aufgabenplanung unsichtbar starten - aber nicht beenden

gelöst Frage von NaedilWindows Tools3 Kommentare

Hallo an alle, ich habe eine Frage zu RoboCopy (System: Windows 7 Prof.); hier kurz die 'Vorgeschichte': Ich verwende ...

Batch & Shell

Probleme bei der Ausführung eines VB-Scriptes

Frage von AuricGoldfingerBatch & Shell1 Kommentar

Hallo zusammen, ich habe folgendes Script geschrieben: Leider bekomme ich bei der Ausführung den Fehler Was mache ich falsch?? ...

Neue Wissensbeiträge
Humor (lol)
(Part num your Hacked phone. +XX XXXXXX5200)
Erfahrungsbericht von Henere vor 23 StundenHumor (lol)1 Kommentar

Mein Handy hat aber ne ganz andere Endnummer. Muss ich mir jetzt Sorgen machen ? :-) Vielleicht betrifft es ...

Exchange Server

Letztes Update für Exchange 2016 CU9 war in gewisser Weise destruktiv

Erfahrungsbericht von DerWoWusste vor 1 TagExchange Server6 Kommentare

Kurzer Erfahrungsbericht zu Exchange2016-KB4340731-x64 Der Exchangeserver hat wie gewöhnlich versucht, es in der Nacht automatisch zu installieren - abgesehen ...

Erkennung und -Abwehr

Neue Sicherheitslücke Foreshadow (L1TF) gefährdet fast alle Intel-Prozessoren

Information von Frank vor 1 TagErkennung und -Abwehr3 Kommentare

Eine neue Sicherheitslücke, genannt Foreshadow (alias L1TF) wurde auf der Usenix Security 18 von einem Team internationaler Experten veröffentlicht. ...

Vmware
VMware Updates gegen L1 Lücke
Information von sabines vor 2 TagenVmware

Für die Vmware Produkte vCenter Server, ESXi, Workstation und Fusion stehe Updates bereit um die L1 Lücke zu schließen. ...

Heiß diskutierte Inhalte
Windows Server
Domäne einsilbig mit nur einem Namen benannt - sowie AD und MX auf einer VM Kardinalsfehler?
Frage von TomTestWindows Server51 Kommentare

Hallo liebe Freunde gepflegter Probleme, seit kurzem soll ich eine Domäne verwalten die zuvor von einem IT-Dienstleister erstellt und ...

DNS
Gibt es eine Art DNS Proxy?
Frage von icepietDNS16 Kommentare

Hallo Nerds, Ich würde gerne folgendes machen: ts.domain.de:3389 soll auf 1.2.3.4:3389 auflösen ts2.domain.de:3389 soll auf 1.2.3.4:3390 auflösen Gibt es ...

Windows Server
Windows Server per Web auf Daten zugreifen und verwalten
Frage von matze2090Windows Server16 Kommentare

Hallo, ich würde gerne von außen auf meinem Windows Server zugreifen um auf meine Daten zu verwalten. Meine frage ...

DSL, VDSL
Router Neustarts
Frage von XerebusDSL, VDSL16 Kommentare

Hallo an alle, ich hab eine Problem mit dem Neustart von meiner Fritz Box wo ich einfach nicht mehr ...