| |
 | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für EPLAN |
| |
 | E-world: Standards und datengetriebene Automatisierung für die Energiewende, eine Pressemitteilung
|
Autor
|
Thema: Script-dxf-Export-Zip (2127 / mal gelesen)
|
A.Robert Mitglied staatl. gepr. Techniker
 
 Beiträge: 479 Registriert: 09.03.2015 EPLAN Electric P8 - Select Version: 2.6 HF4 2.8 HF4 / SQL 2.9 SP1 Update 14 / ProPanel
|
erstellt am: 07. Nov. 2017 13:30 <-- editieren / zitieren --> Unities abgeben:         
Tach zusammen ich muss auf Wunsch unseren Kunden die automatische-Schaltplangenerierung (Script) erweitern. Benötigt werden jetzt nicht nur die pdf-Dateien, sondern auch eine dxf/dwg-Datei habe dazu etwas experimentiert, in einem Test-Projekt:
Code: using System.Windows.Forms; using Eplan.EplApi.Scripting; using Eplan.EplApi.ApplicationFramework; using Eplan.EplApi.Base; using System; using System.IO; using System.IO.Compression; public class TEST_PROJECT { [Start] public void Function() { //dxf-dwg Export
#region DXF-Export + Zip-File CommandLineInterpreter oCLI1 = new CommandLineInterpreter(); ActionCallingContext dxfContext = new ActionCallingContext(); dxfContext.AddParameter("TYPE", "DXFDWGPROJECTSCHEME"); dxfContext.AddParameter("EXPORTSCHEME", "DXF_CustomerDocumentary-Filter"); oCLI1.Execute("export", dxfContext);
bis hierhin kein Problem Code:
string startPath = @"Pfad"; string zipPath = @"Pfad\Ausgabe.zip"; ZipFile.CreateFromDirectory(startPath, zipPath); #endregion }
ab hier kommt die Fehlermeldung => Was möchte Eplan hier von mir? ------------------ Gruß Robert
[Diese Nachricht wurde von A.Robert am 07. Nov. 2017 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cad_hans Ehrenmitglied V.I.P. h.c. Techn. Angestellter
     
 Beiträge: 2295 Registriert: 25.08.2003 ruplan4.70 eplan5.x P8 V1.9 bis V2.7
|
erstellt am: 07. Nov. 2017 13:53 <-- editieren / zitieren --> Unities abgeben:          Nur für A.Robert
|
A.Robert Mitglied staatl. gepr. Techniker
 
 Beiträge: 479 Registriert: 09.03.2015 EPLAN Electric P8 - Select Version: 2.6 HF4 2.8 HF4 / SQL 2.9 SP1 Update 14 / ProPanel
|
erstellt am: 07. Nov. 2017 13:59 <-- editieren / zitieren --> Unities abgeben:         
|
Jonny Wire Mitglied Script-Troll
  
 Beiträge: 811 Registriert: 08.12.2008 EPLAN Electric P8 ... in allen Versionen/Varianten
|
erstellt am: 07. Nov. 2017 16:39 <-- editieren / zitieren --> Unities abgeben:          Nur für A.Robert
|
Jonny Wire Mitglied Script-Troll
  
 Beiträge: 811 Registriert: 08.12.2008 EPLAN Electric P8 ... in allen Versionen/Varianten
|
erstellt am: 08. Nov. 2017 07:28 <-- editieren / zitieren --> Unities abgeben:          Nur für A.Robert
|
A.Robert Mitglied staatl. gepr. Techniker
 
 Beiträge: 479 Registriert: 09.03.2015 EPLAN Electric P8 - Select Version: 2.6 HF4 2.8 HF4 / SQL 2.9 SP1 Update 14 / ProPanel
|
erstellt am: 08. Nov. 2017 08:34 <-- editieren / zitieren --> Unities abgeben:         
Hallo Jonny und Danke für die Antwort ich habe mir 7Zip geladen und über cmd ausprobiert (7z a -tzip archive.zip @listfile.txt, scheint zu laufen. Wie arbeitest du damit? bindest du die dll ein oder über commandline? Hättest du vielleicht ein kleines Beispiel?
------------------ Gruß Robert Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
F.S. Moderator
    
 Beiträge: 1924 Registriert: 23.04.2003 EPLAN Electric P8 2025 Prof.
|
erstellt am: 08. Nov. 2017 09:17 <-- editieren / zitieren --> Unities abgeben:          Nur für A.Robert
Ich verwende auch 7zip. ein kleines Beispiel:
Code:
//Ordner in ZIP-Datei packen public void ZIPFolder(string strSource, string strTarget) { Process objProcess = new Process(); string sExitCode; //Odnerinhalt zippen objProcess.StartInfo.FileName = PathMap.SubstitutePath("$(MD_SCRIPTS)") + @"\7za.exe"; objProcess.StartInfo.Arguments = "a \"" + strTarget + "\" \"" + strSource + "\""; objProcess.StartInfo.WindowStyle = ProcessWindowStyle.Minimized; objProcess.Start(); //Warten, bis der Prozess eine ExitCode zurückgibt objProcess.WaitForExit(); //der Exitcode als String sExitCode = objProcess.ExitCode.ToString(); switch (sExitCode) { case "0": //MessageBox.Show("ZIP-Datei wurde erstellt.", "7z, Meldung", MessageBoxButtons.OK, MessageBoxIcon.Information); break; case "1": MessageBox.Show("Warning (Non fatal error(s)). For example, one or more files were locked by some other application, so they were not compressed.", "7z, Meldung", MessageBoxButtons.OK, MessageBoxIcon.Warning); break; case "2": MessageBox.Show("Fatal error", "7z, Meldung", MessageBoxButtons.OK, MessageBoxIcon.Error); break; case "7": MessageBox.Show("Command line error", "7z, Meldung", MessageBoxButtons.OK, MessageBoxIcon.Error); break; case "8": MessageBox.Show("Not enough memory for operation", "7z, Meldung", MessageBoxButtons.OK, MessageBoxIcon.Error); break; case "255": MessageBox.Show("User stopped the process", "7z, Meldung", MessageBoxButtons.OK, MessageBoxIcon.Information); break; } objProcess.Close(); return; }
------------------ grüße FrankS Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
A.Robert Mitglied staatl. gepr. Techniker
 
 Beiträge: 479 Registriert: 09.03.2015 EPLAN Electric P8 - Select Version: 2.6 HF4 2.8 HF4 / SQL 2.9 SP1 Update 14 / ProPanel
|
erstellt am: 08. Nov. 2017 10:59 <-- editieren / zitieren --> Unities abgeben:         
Mega Frank! Dankeschön Für die Leser, die den Beitrag in Zukunft durch die Suche finden werden: durch: Code:
objProcess.StartInfo.Arguments = "a \"" + strTarget + "\" \"" + strSource + "\"";
wird eine .7z erstellt durch:
Code:
objProcess.StartInfo.Arguments = "a -tzip \"" + strTarget + "\" \"" + strSource + "\"";
wird eine .zip erstellt EDIT: 10Ü sind sowas von für beide drin ------------------ Gruß Robert [Diese Nachricht wurde von A.Robert am 08. Nov. 2017 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |

| Fachplaner für Elektrotechnik (m/w/d) | Wir sind eine international tätige Unternehmensgruppe der Automatisierungstechnik und beschäftigen über 1.000 Mitarbeiter und Mitarbeiterinnen an diversen Standorten. Entwickelt werden speziell auf den jeweiligen Kundenwunsch zugeschnittene Lösungskonzepte für Unternehmen aus den verschiedensten Branchen - vom Mittelstand bis zur Großindustrie. Zur Verstärkung unseres Teams suchen wir am ... | Anzeige ansehen | Feste Anstellung |
|
F.S. Moderator
    
 Beiträge: 1924 Registriert: 23.04.2003 EPLAN Electric P8 2025 Prof.
|
erstellt am: 08. Nov. 2017 11:27 <-- editieren / zitieren --> Unities abgeben:          Nur für A.Robert
|