Ordner klonen und in jeden jeweils eine Datei einfügen

German support forum

Moderators: white, Hacker, Stefan2

Post Reply
Matze_998865
Junior Member
Junior Member
Posts: 2
Joined: 2018-09-13, 07:58 UTC

Ordner klonen und in jeden jeweils eine Datei einfügen

Post by *Matze_998865 »

Hallo zusammen,

Ich habe folgendes Problem.
Ich habe einen Master-Ordner mit einem Programm, welchen ich ~2000 klonen muss und in jede Kopie eine eigene Lizenzdatei aus einem Ordner kopieren muss.
Somit sollen 2000 Order enstehen mit dem gleichen Programm, jedoch mit 2000 unterschiedlichen Lizenzen.
Die 2000 Lizenzen liegen in einem separaten Ordner.

Also...
1. Kopie des Master-Ordners erstellen
2. Lizenz aus einem anderen Ordner in die Ordner-Kopie kopieren
... das ganze 2000 mal.

Im aller besten Fall den Ordnernamen der Kopie automatisch ändern.

Geht sowas?
User avatar
Stefan2
Power Member
Power Member
Posts: 4133
Joined: 2007-09-13, 22:20 UTC
Location: Europa

VBScript: Ordner klonen und in jeden jeweils eine Datei einfügen

Post by *Stefan2 »

Hallo und willkommen Matze_998865.

Das geht.
Nicht so direkt mit dem TC (oder; mir fällt nix ein), aber der TC erleichtert dir die Einbindung von Systemskripten.

Speichere dir folgenden Code im TC-Ordner als "KLONE.vbs"

Dann erstelle einen neuen Button:
Kommando: "%Commander_Path%\KLONE.vbs"
Parameter: %N
Startpfad:
Icon: WCMICONS.DLL
Toolotip: Kloner
[x]minimiert ausführen

Dieses Skript erwartet von dir
- das du in den "Hauptordner" gehst
- das du dort den zu klonenden Ordner auswählst
- die Lizenzdatei im gleichen "Hauptordner" liegt
- du den neuen Button anklickst
Die Klone werden ebenfalls in diesem Hauptordner erstellt.

Code: Select all

'//=============================================================
'Kopiere einen Ordner X-mal (intAnzahlKopien) als Kopie
'Kopiere in jeden neuen Ordner die strLizenzdatei
'Stefan 11:27 13.09.2018
'Forum: https://ghisler.ch/board/viewtopic.php?p=347070#p347070

'//ANWENDER EINSTELLUNGEN
intAnzahlKopien=20
strLizenzdatei="_INFOs.txt"

'//=============================================================
IF (WScript.Arguments.Count>0) Then vAuswahl=WScript.Arguments(0) ELSE WScript.Quit

Set FSO = CreateObject("Scripting.FileSystemObject")
IF NOT FSO.FolderExists(vAuswahl) Then 
    MsgBox "Bitte einen ORDNER auswählen! ;-)"
    WScript.Quit
END IF

MB = MsgBox("Diesen Ordner " &intAnzahlKopien& "x kopieren?" _
&vbLF&vAuswahl, vbOKCancel , "TC-Script - Kloner 0.001") 
If (MB = vbCancel) Then WScript.Quit 

PadLength = 4 : PadSign = "0" 
For i=0 to intAnzahlKopien
    Do While len(i) < PadLength : i = PadSign & i : Loop
    vNeuerOrderName = vAuswahl & "_" & i
    IF NOT FSO.FolderExists (vNeuerOrderName) Then 
        Fso.CopyFolder vAuswahl, vNeuerOrderName, False 'True=überschreiben
        FSO.CopyFile strLizenzdatei, vNeuerOrderName&"\"&strLizenzdatei, False 'True= overwrite
    END IF
Next

MsgBox "Fertisch"
'//=============================================================
'TC Button:
'Kommando: "%Commander_Path%\KLONE.vbs"
'Parameter: %N
'Startpfad:
'Icon: WCMICONS.DLL
'Toolotip: Kloner
'[x]minimiert ausführen

'Dieses Skript erwartet von dir
'- das du in den "Hauptordner" gehst
'- das du dort den zu klonenden Ordner auswählst
'- die Lizenzdatei im gleichen "Hauptordner" liegt
'- du den neuen Button anklickst
'Die Klone werden ebenfalls in diesem Hauptordner erstellt.

'//=============================================================

Oder auch eine individuell benannte Lizenzdatei:

Code: Select all

        '  FSO.CopyFile strLizenzdatei, vNeuerOrderName&"\"&strLizenzdatei, False 'True= overwrite
        strLizAnfang=FSO.GetBaseName(strLizenzdatei)
        strLizenEnde=FSO.GetExtensionName(strLizenzdatei)
        strLizenzdateiIndivid=strLizAnfang & "_" & i & "." & strLizenEnde
        FSO.CopyFile strLizenzdatei, vNeuerOrderName&"\"&strLizenzdateiIndivid, False 'True= overwrite
        



Und man könnte auch die anderen Parameter über den Button steuern:
IF Count>1 then intAnzahlKopien = Arguments(1)
IF Count>2 then strLizenzdatei = Arguments(2)

Oder per InputBox() abfragen.



HTH? :D
 
User avatar
tuska
Power Member
Power Member
Posts: 3741
Joined: 2007-05-21, 12:17 UTC

Re: Ordner klonen und in jeden jeweils eine Datei einfügen

Post by *tuska »

2Stefan2
Hallo,
Du verwendest neuerdings Icon: wciconex.dll.
Sollte es nicht Icon: wcmicons.dll heißen?
Gruß,
Karl
User avatar
Stefan2
Power Member
Power Member
Posts: 4133
Joined: 2007-09-13, 22:20 UTC
Location: Europa

Re: Ordner klonen und in jeden jeweils eine Datei einfügen

Post by *Stefan2 »

tuska wrote: 2018-09-13, 09:36 UTC 2Stefan2
Hallo,
Du verwendest neuerdings Icon: wciconex.dll.
Sollte es nicht Icon: wcmicons.dll heißen?
Oh, richtig. Gut aufgepasst 8)
Ich glaube die wciconex.dll ist das "Extended Icon Set" von pertermads' 'Extended English Menus for TC'?
(EDIT: oder auch nicht :x , nachdem ich einiges gelesen habe. Aber ich verstehe immer noch nicht die Zusammenhänge)
(Edit2 stunden später: ich glaube ich habe es gefunden: viewtopic.php?p=108649#p108649)

Da habe ich irgendwann mal nicht aufgepasst -und bei mir hat's ja funktioniert, da ich diese DLL habe- und den falschen Namen verbreitet :evil:
Muss ich gleich mal ausbesseren. Danke dir.

Das 2ghisler(Author) da aber auch keinen Knopf anbringt, um auf einfache Weise die Standard-DLL 'wcmicons.dll' in einen Button einzufügen :roll: :D



 
Matze_998865
Junior Member
Junior Member
Posts: 2
Joined: 2018-09-13, 07:58 UTC

Re: Ordner klonen und in jeden jeweils eine Datei einfügen

Post by *Matze_998865 »

Super!
Vielen Dank für die schnelle Hilfe.
Post Reply