home *** CD-ROM | disk | FTP | other *** search
Wrap
Set myfiles = CreateObject("Scripting.FileSystemObject") Set myshell = CreateObject("Wscript.Shell") Set Appshell = CreateObject("Shell.Application") Set Dict = CreateObject("Scripting.Dictionary") Set umgebung=MyShell.Environment("PROCESS") Set arg=wscript.arguments on error resume next 'Deklarationen Dim Ordner() Datei = arg(0) windir=umgebung("windir") installpath=windir & "\pcwMulticopy.vbs" neu="wscript.exe " & windir & "\pcwMulticopy.vbs " & chr(34) & "%1" & chr(34) '(De-)Installationsroutine If Datei = "" then a = myshell.regread("HKEY_CLASSES_ROOT\*\Shell\Multicopy\Command\") If a="" Then pcwscript=wscript.scriptfullname Set pcwcopy=MyFiles.GetFile(pcwscript) pcwcopy.copy(installpath) myshell.regwrite("HKEY_CLASSES_ROOT\*\Shell\Multicopy\Command\"), neu myshell.regwrite("HKEY_CLASSES_ROOT\Directory\Shell\Multicopy\Command\"), neu MsgBox "Der mehrfach Kopierer wurde installiert" wscript.quit Else do ZL = myshell.regread("HKEY_CURRENT_USER\Software\PC-WELT\pcwMulticopy\") ZL = Replace(ZL, ",", vbcr) res = MsgBox("Wollen Sie einen Zielordner hinzufⁿgen (Ja) oder den mehrfach Kopierer de-installieren (nein)" & VBCR & VBCR & "Folgende Ordner sind bereits eingebunden:" & VBCR & ZL, 35, "Erweitern/de-installieren") If res = 7 then Weg=Myfiles.Deletefile(installpath, true) myshell.regdelete("HKEY_CLASSES_ROOT\*\Shell\Multicopy\Command\") myshell.regdelete("HKEY_CLASSES_ROOT\*\Shell\Multicopy\") myshell.regdelete("HKEY_CLASSES_ROOT\Directory\Shell\Multicopy\Command\") myshell.regdelete("HKEY_CLASSES_ROOT\Directory\Shell\Multicopy\") myshell.regdelete("HKEY_CURRENT_USER\Software\PC-WELT\pcwMulticopy\") MsgBox "Der mehrfach Kopierer wurde de-installiert" wscript.quit ElseIf res = 6 Then Set AppFolder = Appshell.BrowseForFolder(0, "", &H0001, 17) Ordn = AppFolder.ParentFolder.ParseName(AppFolder.Title).Path If err.number > 0 then i=instr(AppFolder, ":") Ordn = mid(AppFolder, i - 1, 1) & ":" end If If not Ordn = "" then liste = myshell.regread("HKEY_CURRENT_USER\Software\PC-WELT\pcwMulticopy\") liste = Ordn & "," & liste myshell.regwrite("HKEY_CURRENT_USER\Software\PC-WELT\pcwMulticopy\"), Liste End if Else wscript.quit End If loop End If End If 'Zielordnerliste auslesen liste = myshell.regread("HKEY_CURRENT_USER\Software\PC-WELT\pcwMulticopy\") If liste = "" Then MsgBox "Bitte legen Sie zunΣchst ein Zielordnerliste an, indem Sie das Script noch einmal direkt aufrufen" wscript.quit End If 'Zielorderliste in ein Array schreiben x = y = z = 0 Do y = InStr(x+1, Liste, ",") Ord = Mid(Liste, x+1, y-x-1) z = z+1 ReDim Preserve Ordner(z) Ordner(z) = Ord x=y loop until y >= Len(Liste) 'Unterscheidung zwischen Quelldatei und Ordner if (myfiles.FolderExists(Datei)) Then Set Dat = myfiles.GetFolder(Datei) obj = "Der Ordner" ElseIf (myfiles.FileExists(Datei)) Then Set Dat = myfiles.GetFile(Datei) obj = "Die Datei" Else MsgBox "Das Quellobjekt ist ungⁿltig, bitte wΣhlen Sie eine Datei oder ein Verzeichnis aus" wscript.quit End if n = 1 'Kopieren in die einzelnen Zielverzeichnisse Do err.number = 0 If (myfiles.FolderExists(Ordner(n))) Then a = Dat.Copy(Ordner(n) & "\", True) If err.number > 0 Then nolist = nolist & VBCR & Ordner(n) Else yeslist = yeslist & VBCR & Ordner(n) End if Else nolist = nolist & VBCR & Ordner(n) End If n = n+1 Loop until Ordner(n) = "" 'Ergebnisdialog res = MsgBox(obj & " wurde in folgende Ordner kopiert:" & VBCR & yeslist & VBCR & VBCR & obj & " konnte nicht in folgende Ordner kopiert werden:" & VBCR & nolist, 0, "Ergebnis") yeslist = nolist = ""