Verzeichnis kopieren mit vb
Hallo,
ich hab leider fast null Ahnung von VB, muss aber per VB Verzeichnisse (rekursiv) kopieren lassen.
Nun hab ich mir mit Hilfe des Internets ein Script zusammen "gestolpert" ... nur leider tut es nicht
Es kommt keine Fehlermeldung (mehr), aber es wird auch nix kopiert.
Könntet ihr mir bitte weiterhelfen?
Hier der aktuellste Code (glaub 8. Versuch)
Und das Ergebnis sollte möglichst so sein, das ich %USERPROFILE% verwenden kann.
Vielen Dank vorab!!
Gruß Renate
ich hab leider fast null Ahnung von VB, muss aber per VB Verzeichnisse (rekursiv) kopieren lassen.
Nun hab ich mir mit Hilfe des Internets ein Script zusammen "gestolpert" ... nur leider tut es nicht
Es kommt keine Fehlermeldung (mehr), aber es wird auch nix kopiert.
Könntet ihr mir bitte weiterhelfen?
Hier der aktuellste Code (glaub 8. Versuch)
Option Explicit
Dim objFSO, objFolder, strSrcFld, strDstFld
strSrcFld = "C:\temp\ipos"
strDstFld = "C:\Dokumente und Einstellungen\admine\Desktop"
'strDstFld = CreateObject("WScript.Shell").ExpandEnvironmentStrings("%USERPROFILE%") & "\Desktop"
Set objFSO = CreateObject("Scripting.FileSystemObject")
If objFSO.FolderExists(strDstFld) Then
Set objFolder = objFSO.GetFolder(strDstFld)
Else
WScript.Echo "Ordner nicht da, er wird kopiert."
objFSO.CopyFolder strSrcFld, strDstFld
End If
Set objFSO = Nothing
Und das Ergebnis sollte möglichst so sein, das ich %USERPROFILE% verwenden kann.
Vielen Dank vorab!!
Gruß Renate
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 160484
Url: https://administrator.de/contentid/160484
Ausgedruckt am: 22.11.2024 um 18:11 Uhr
16 Kommentare
Neuester Kommentar
Hallo reni09!
Ich nehme an, das wäre eher so gemeint:
Es könnte zwar auch %USERPROFILE% verwendet werden, allerdings ist der Desktop unmittelbar als "SpecialFolder" ansprechbar (und da der mit allergrößter Wahrscheinlichkeit vorhanden ist , bin ich davon ausgegangen, dass das Vorhandensein des Ordners "ipos" auf dem Desktop geprüft werden sollte) ...
Grüße
bastla
Ich nehme an, das wäre eher so gemeint:
Option Explicit
Dim objFSO, strSrcFld, strDstFld
strSrcFld = "C:\temp\ipos"
strDstFld = CreateObject("WScript.Shell").SpecialFolders("Desktop") & "\ipos"
Set objFSO = CreateObject("Scripting.FileSystemObject")
If Not objFSO.FolderExists(strDstFld) Then
WScript.Echo "Ordner nicht da, er wird kopiert."
objFSO.CopyFolder strSrcFld, strDstFld
End If
Set objFSO = Nothing
Grüße
bastla
Hallo reni09!
Ich hätte es zwar parat gehabt, war aber gerade nicht parat ...
Noch als Hinweis zu "
Grüße
bastla
Ich hätte es zwar parat gehabt, war aber gerade nicht parat ...
Wenn es das Verzeichnis schon gibt, dann wird nix kopiert (logisch).
Aber das Script läuft normal weiter. Oder?
Ja.Aber das Script läuft normal weiter. Oder?
Noch als Hinweis zu "
MoveFolder
": Das Verschieben auf ein anderes Laufwerk (nur falls Du's mal brauchen solltest) wird (nach meinen Erfahrungswerten) damit nicht klappen ...Grüße
bastla
Hallo Tsuki!
Schön, Dich wieder mal zu lesen ...
Danke jedenfalls für die Ergänzung.
Grüße
bastla
Schön, Dich wieder mal zu lesen ...
bastla weiß soetwas sowieso
Das ist jetzt aber einer Unterstellung (wahrscheinlich nur, weil ich die Tage mal ein "CopyHere
" ausgegraben habe) ... Danke jedenfalls für die Ergänzung.
Grüße
bastla
Hallo reni09!
Das Verschieben würde jedenfalls etwa so aussehen:
Wenn Du "
Grüße
bastla
Ähm ... wie ist's mit "objFSO.CopyFolder"? Kann man das von einem LW auf das andere LW anwenden?
Magst Du das denn nicht selbst testen?Das Verschieben würde jedenfalls etwa so aussehen:
Set App = CreateObject("Shell.Application")
App.Namespace(strDstFld).MoveHere App.Namespace(strSrcFld).Items.Item
.Item
" weglässt, werden die nur die Ordnerinhalte unmittelbar in den Zielordner (muss bereits existieren) verschoben ...Grüße
bastla
Hallo reni09!
Ich will Dich ja nicht um die Wochenendruhe bringen, aber
(Trotzdem ) auch Dir ein schönes WE
bastla
Ich will Dich ja nicht um die Wochenendruhe bringen, aber
hier hab ich nur XP in einer VM und da gibts nur C:\
kann ich eigentlich nicht gelten lassen - VHD sind ja nicht so teuer , dass Du der VM nicht noch ein oder 2 Stück davon einbauen könntest ...(Trotzdem ) auch Dir ein schönes WE
bastla