TwinCAT-Projekt als Archiv speichern

TwinCAT unterstützt zwei Varianten des Projektexports: Die gesamte Solution lässt sich als .tnzip-Archiv speichern. Einzelne Teilprojekte, etwa ein PLC-Projekt oder einen POUs-Ordner, exportiert ExportChild als .tpzip- oder .zip-Datei.

Voraussetzungen

Solution als Archiv speichern

Das ITcArchivePersist-Interface wird über dte.GetObject("TcArchivePersist") bezogen. SaveAsArchive speichert die gesamte Solution als .tnzip-Datei. Das Archiv enthält alle Projektdateien und lässt sich auf einem anderen Rechner wiederherstellen.

using EnvDTE;

// Get ITcArchivePersist object via DTE
ITcArchivePersist persist = (ITcArchivePersist)dte.GetObject("TcArchivePersist");

// Save solution as .tnzip
persist.SaveAsArchive(@"C:\Archives\MyProject.tnzip");

// Optionally close solution afterwards
dte.Solution.Close();

Teilprojekte exportieren

Für den Export einzelner Teilprojekte steht ExportChild auf ITcSmTreeItem zur Verfügung. Der erste Parameter gibt den Namen des zu exportierenden Kindelements an, der zweite den Zieldateipfad.

// Export PLC project as .tpzip
ITcSmTreeItem plc = sysManager.LookupTreeItem("TIPC");
plc.ExportChild("PLC1", @"C:\Archives\PLC1.tpzip");

// Export POUs as .zip
ITcSmTreeItem pous = sysManager.LookupTreeItem("TIPC^PLC1^PLC1 Project^POUs");
pous.ExportChild("", @"C:\Archives\POUs.zip");