TwinCAT-Projekt aus einem Archiv laden
TwinCAT unterstützt zwei Varianten des Projektimports: Die gesamte Solution lässt sich aus einem .tnzip-Archiv wiederherstellen. Einzelne Teilprojekte können über ImportChild auf einem Tree-Item importiert werden.
Voraussetzungen
- TwinCAT XAE ist installiert und gestartet.
- Eine DTE-Verbindung zur Zielinstanz ist aktiv.
ITcSysManagerist in einem STA-Thread initialisiert.- Eine
.tnzip- oder.zip-Archivdatei ist vorhanden.
Solution aus Archiv laden
Das ITcArchivePersist-Interface wird über dte.GetObject("TcArchivePersist") bezogen. LoadFromArchive stellt die Solution im angegebenen Zielordner wieder her. Ein leerer Pfad verwendet den Standardordner.
using EnvDTE;
// Load entire solution from .tnzip
ITcArchivePersist persist = (ITcArchivePersist)dte.GetObject("TcArchivePersist");
// Second parameter: target folder (empty = default folder)
persist.LoadFromArchive(@"C:\Archives\MyProject.tnzip", @"C:\Projects\Restored");
Teilprojekte importieren
// Import PLC from .tpzip
ITcSmTreeItem plc = sysManager.LookupTreeItem("TIPC");
plc.ImportChild(@"C:\Archives\PLC1.tpzip", "", false, "");
// Import POUs from .zip
ITcSmTreeItem pous = sysManager.LookupTreeItem("TIPC^PLC1^PLC1 Project");
pous.ImportChild(@"C:\Archives\POUs.zip", "", false, "");
Einzelne Teilprojekte werden über ImportChild auf dem übergeordneten Tree-Item importiert. Der erste Parameter ist der Pfad zur Archivdatei.