Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  EPLAN Electric P8
  Script-dxf-Export-Zip

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für EPLAN
Autor Thema:  Script-dxf-Export-Zip (1848 / mal gelesen)
A.Robert
Mitglied
staatl. gepr. Techniker


Sehen Sie sich das Profil von A.Robert an!   Senden Sie eine Private Message an A.Robert  Schreiben Sie einen Gästebucheintrag für A.Robert

Beiträge: 441
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 oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities


Fehler_Zip.JPG


TEST_PROJECT.txt

 
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


Sehen Sie sich das Profil von cad_hans an!   Senden Sie eine Private Message an cad_hans  Schreiben Sie einen Gästebucheintrag für cad_hans

Beiträge: 2052
Registriert: 25.08.2003

ruplan4.70
eplan5.x
P8 V1.9 bis V2.7

erstellt am: 07. Nov. 2017 13:53    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für A.Robert 10 Unities + Antwort hilfreich

hallo,

string ZipFile nicht deklariert?


string ZipFile.CreateFromDirectory(startPath, zipPath);

kann das so funktionieren?

------------------
ruplan4.70
eplan5.x
P8 V1.9 bis V2.7

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

A.Robert
Mitglied
staatl. gepr. Techniker


Sehen Sie sich das Profil von A.Robert an!   Senden Sie eine Private Message an A.Robert  Schreiben Sie einen Gästebucheintrag für A.Robert

Beiträge: 441
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 oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities


ZipFile.JPG

 
=>

------------------
Gruß Robert

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Jonny Wire
Mitglied
Script-Troll


Sehen Sie sich das Profil von Jonny Wire an!   Senden Sie eine Private Message an Jonny Wire  Schreiben Sie einen Gästebucheintrag für Jonny Wire

Beiträge: 786
Registriert: 08.12.2008

EPLAN Electric P8
... in allen Versionen/Varianten

erstellt am: 07. Nov. 2017 16:39    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für A.Robert 10 Unities + Antwort hilfreich

Denke der Namespace ist nicht erlaubt.

------------------
Scripting in EPLAN ist einfach (toll)!

Scripte & Anwendungen rund um EPLAN!

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Jonny Wire
Mitglied
Script-Troll


Sehen Sie sich das Profil von Jonny Wire an!   Senden Sie eine Private Message an Jonny Wire  Schreiben Sie einen Gästebucheintrag für Jonny Wire

Beiträge: 786
Registriert: 08.12.2008

EPLAN Electric P8
... in allen Versionen/Varianten

erstellt am: 08. Nov. 2017 07:28    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für A.Robert 10 Unities + Antwort hilfreich

Habe mir das nochmal angschaut.

Die Klasse ZipFile ist in System.IO.Compression bzw. dann in Filesystem.
EPLAN lässt diesen Namespace nicht zu.

Meine Empfehlung: Nutze eine Externe exe zum zippen. Ich nutze hier gerne 7zip.

------------------
Scripting in EPLAN ist einfach (toll)!

Scripte & Anwendungen rund um EPLAN!

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

A.Robert
Mitglied
staatl. gepr. Techniker


Sehen Sie sich das Profil von A.Robert an!   Senden Sie eine Private Message an A.Robert  Schreiben Sie einen Gästebucheintrag für A.Robert

Beiträge: 441
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 oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

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



Sehen Sie sich das Profil von F.S. an!   Senden Sie eine Private Message an F.S.  Schreiben Sie einen Gästebucheintrag für F.S.

Beiträge: 1815
Registriert: 23.04.2003

EPLAN Electric P8
2023 Prof.

erstellt am: 08. Nov. 2017 09:17    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für A.Robert 10 Unities + Antwort hilfreich

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


Sehen Sie sich das Profil von A.Robert an!   Senden Sie eine Private Message an A.Robert  Schreiben Sie einen Gästebucheintrag für A.Robert

Beiträge: 441
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 oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

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

F.S.
Moderator



Sehen Sie sich das Profil von F.S. an!   Senden Sie eine Private Message an F.S.  Schreiben Sie einen Gästebucheintrag für F.S.

Beiträge: 1815
Registriert: 23.04.2003

EPLAN Electric P8
2023 Prof.

erstellt am: 08. Nov. 2017 11:27    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für A.Robert 10 Unities + Antwort hilfreich

Gerne.

Anmerkung: Wenn der Parameter -t nicht verwendet wird, wird über die Dateiendung der Archivtyp festgelegt.

------------------
grüße
FrankS

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz