Jump to content


This is a ready-only archive of the InstallSite Forum. You cannot post any new content here. / Dies ist ein Archiv des InstallSite Forums. Hier können keine neuen Beiträge veröffentlicht werden.
Photo

Sicheres kopieren mit 4 GB ?


2 replies to this topic

bergermi

bergermi
  • Members
  • 34 posts

Posted 01 December 2004 - 13:03

blink.gif
Ich mache gerade ein Installscript das ein Programm installiert mit dem man Daten viewen kann.
Die Daten (3,5GB) können entweder auf der DVD verbleiben oder auf die Festplatte kopiert werden.
Das Programm zu installieren ist ein Leichtes, doch die Daten korrekt zu kopieren nicht.
Ich möchte die Daten nicht in einem unkomprimierten Fature haben denn dann dauert das Kompillieren ewig.
Der Vorgänger des Installationsprogrammes (IS 6.1) machte das mit CopyFile,
doch das ist bei einer solchen Datenmange schon ein Problem da man nicht kontrollieren kann ob alle Dateien auf dem Ziel richtig ankommen (oder ?) und außerdem kopierte der die Dateien schreibgeschützt.
Zumindest machten wir die Erfahrung dass das kopieren nicht immer funktionierte.

Nun meine Frage
Wie macht das ein Profi ?
Welchen Ansätze gibt es ?
Sollte man ein 2. Setup nur mit den Daten machen und vom Hauptprogramm aus als child starten (Daten in ein unkomprimiertes Feature) ?
Sollte man mit der Variante "Zusätzliche Dateien" arbeiten ?


Danke im vorraus für die Infos
Michael
Vielleicht schreibt mir mal jemand und ich muss nicht immer einen Monolog führen.


Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 02 December 2004 - 10:28

Die sichere Variante wäre natürlich, die Datien tatsächlich in die Komponenten einzubinden und InstallShield das Kopieren (und verifizieren) übernehmen zu lassen. Vielleicht kannst du denMedienbuild nachts durchlaufen lassen (wie oft ändern sich die Dateien denn?)
Wenn du nur am Skript änderst musst du ja keinen kompletten rebuild machen, sondern nur das Skript.

bergermi

bergermi
  • Members
  • 34 posts

Posted 03 December 2004 - 07:31

Dann geht aber bei mir was falsch.
Ich muss nach jedem Speicherforgang wenn ich debuggen will ein rebuild machen!
(Programmdaten liegen am Netzwerk)

Mittlerweile hab ich folgende Strategie zum kopieren entwickelt.

Da es sich um eine Unmenge an kleinen Daten handelt (ca. 40.000 Files in 1200 Ordnern) habe ich mir folgendes gedacht.
Das kopieren der Daten von DVD dauert ca. 1 bis 2 h und bei einem Kopierfehler einfach abzubrechen ist nicht schön daher werde ich das zu kopierende Verzeichniss (mit den 1000 Unterordnern) in eine Liste einlesen (FindAllFiles) und mit CopyFile jedes einzelne File in das Zielverzeichnis schieben. Sollte hier ein Fehler auftreten schreibe ich die Datei in eine Fehlerliste die danach auf der Festplatte als Textdatei landet. (vielleicht auch als Bat).
Danach wird geprüft ob die Dateien angekommen sind und gleiche Größe haben. Sollte dies nicht der Fall sein dann schreibe ich diese Datei ebenfalls in die Liste.
Vermutlich dauert das länger als beim normalen kopieren aber dafür habe ich die Garantie dass nicht sofort abgebrochen wird und das die Datei wirklich angekommen ist (was in der früheren Version nicht unbedingt der Fall war).

Die Anzahl der Einträge in der Liste sollte aber begrenzt werden, denn beim Überschreiten kann man annehmen dass das Laufwerk oder die DVD defekt ist.

Die Liste kann nun verwendet werden um händisch zu kopieren oder per BAT das Kopieren von einer neuen DVD anzustarten.

Edited by bergermi, 03 December 2004 - 07:33.