<?xml version="1.0" encoding="utf-8"?>
<feed xml:lang="en" xmlns="http://www.w3.org/2005/Atom"><title>Recent posts to Zip Datei in Codesys 2.1 platzsparend einbinden</title><link href="https://forge.codesys.com/forge/talk/Deutsch/thread/43444b3fba/" rel="alternate"/><link href="https://forge.codesys.com/forge/talk/Deutsch/thread/43444b3fba/feed.atom" rel="self"/><id>https://forge.codesys.com/forge/talk/Deutsch/thread/43444b3fba/</id><updated>2020-02-28T14:41:39.238000Z</updated><subtitle>Recent posts to Zip Datei in Codesys 2.1 platzsparend einbinden</subtitle><entry><title>Zip Datei in Codesys 2.1 platzsparend einbinden</title><link href="https://forge.codesys.com/forge/talk/Deutsch/thread/43444b3fba/?limit=25#0b35" rel="alternate"/><published>2020-02-28T14:41:39.238000Z</published><updated>2020-02-28T14:41:39.238000Z</updated><author><name>Ingo Sundermann</name><uri>https://forge.codesys.com/u/ingo-sundermann/</uri></author><id>https://forge.codesys.comf724c70f30a8e0775fc17f55e06da1a7878ebea8</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Hallo,&lt;/p&gt;
&lt;p&gt;danke für die Antwort.&lt;/p&gt;
&lt;p&gt;-&amp;gt;Ich arbeite z.Zt. mit einer Digsy Compact E von Intercontrol.&lt;/p&gt;
&lt;p&gt;(Eine höhere Codesys Version scheitert glaube ich daran).&lt;/p&gt;
&lt;p&gt;-&amp;gt;Meine ZIP-Files sind maschinenabhängig unterschiedlich groß&lt;/p&gt;
&lt;p&gt;und können (vermutlich) mehrere KB groß werden.&lt;/p&gt;
&lt;p&gt;Ich versuche z.Zt. die Nullen in meinem Zip-File zu ersetzen, da meine Versuche mit dem Byte Array zu sehr hohem Speicheraufwand geführt haben. &lt;/p&gt;
&lt;p&gt;Speicheraufwendig scheint allerdings die Initialisierung zu sein, nicht das Array selbst!&lt;/p&gt;
&lt;p&gt;Gibt es hier vielleich eine Möglichkeit ein Array effektiver zu bedaten ?&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Zip Datei in Codesys 2.1 platzsparend einbinden</title><link href="https://forge.codesys.com/forge/talk/Deutsch/thread/43444b3fba/?limit=25#fd34" rel="alternate"/><published>2020-02-28T14:41:36.426000Z</published><updated>2020-02-28T14:41:36.426000Z</updated><author><name>bschuster</name><uri>https://forge.codesys.com/u/bschuster/</uri></author><id>https://forge.codesys.com01a3fca323a18f3e9826981da5eecd83f1f26b57</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Hallo,&lt;/p&gt;
&lt;p&gt;mir stellen sich zwei Fragen:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;wie gross ist dein "zip-file" -- Annahme 1408 Byte&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;welche Hardware verwendest Du -- aktuelle CoDeSys V2.3.9.10 - evtl. updaten&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Dein Byte-Array belegt 1408 Byte, die Nullen werden mit gespeichert&lt;/p&gt;
&lt;p&gt;Deine String-Arrays belegen jeweils 1419 Byte (11 Strings mit je 128Byte+ je 1 Byte Längeninformation), die Nullen bedeuten "String-Ende" ! Also wird der Rest leer sein.&lt;/p&gt;
&lt;p&gt;--&amp;gt; Die optimale Lösung ist das Byte-Array, hier werden nur so viele Bytes alloziert wie benötigt. Zudem kannst Du in einer for-Schleife byte für byte bearbeiten.&lt;/p&gt;
&lt;p&gt;Vielleicht hilfts ja weiter&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Zip Datei in Codesys 2.1 platzsparend einbinden</title><link href="https://forge.codesys.com/forge/talk/Deutsch/thread/43444b3fba/?limit=25#fb55" rel="alternate"/><published>2020-02-28T14:41:28.833000Z</published><updated>2020-02-28T14:41:28.833000Z</updated><author><name>Ingo Sundermann</name><uri>https://forge.codesys.com/u/ingo-sundermann/</uri></author><id>https://forge.codesys.com8273190d4338944ac2e1c1cd7676f0348d6f09b0</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Hallo,&lt;/p&gt;
&lt;p&gt;ich versuche eine ZIP-Datei in unserem Steuerungsprogramm (unter Codesys 2.1) abzulegen.&lt;/p&gt;
&lt;p&gt;Der erste Versuch belegt extrem viel Speicherplatz (für 1408 Bytes ca. 30KB Speicherplatz) &lt;/p&gt;
&lt;p&gt;VAR CONST&lt;/p&gt;
&lt;p&gt;file:ARRAY&lt;span&gt;[1..1408]&lt;/span&gt; OF BYTE := 16#50,16#4B,16#03,16#04,16#14,16#00,16#08,....,16#00,16#00;&lt;/p&gt;
&lt;p&gt;END_VAR&lt;/p&gt;
&lt;p&gt;Der zweite Versuch scheint, was den Speicherplatz angeht optimal zu sein:&lt;/p&gt;
&lt;p&gt;VAR CONST&lt;/p&gt;
&lt;p&gt;file :   ARRAY&lt;span&gt;[1..11]&lt;/span&gt; OF STRING&lt;span&gt;[128]&lt;/span&gt; :=&lt;/p&gt;
&lt;p&gt;'$50$4B$03$04...$14$00'&lt;/p&gt;
&lt;p&gt;'$4D$3C$CC...$B1$87$01'&lt;/p&gt;
&lt;p&gt;...&lt;/p&gt;
&lt;p&gt;'$FF$FC$72$3C...$E7$CC$07';&lt;/p&gt;
&lt;p&gt;END_VAR&lt;/p&gt;
&lt;p&gt;Allerdings wird nach der ersten Null (beim Einloggen) der String terminiert !&lt;/p&gt;
&lt;p&gt;Ich kann die 'echten Nullen' aber nicht vermeiden.&lt;/p&gt;
&lt;p&gt;Der dritte Versuch belegt den doppelten Speicher von Versuch 2 und ist damit auch nur ein Kompromiss:&lt;/p&gt;
&lt;p&gt;VAR CONST&lt;/p&gt;
&lt;p&gt;file :   ARRAY&lt;span&gt;[1..11]&lt;/span&gt; OF STRING&lt;span&gt;[128]&lt;/span&gt; :=&lt;/p&gt;
&lt;p&gt;'504B0304...1400'&lt;/p&gt;
&lt;p&gt;'4D3CCC...B18701'&lt;/p&gt;
&lt;p&gt;...&lt;/p&gt;
&lt;p&gt;'FFFC723C...E72C07';&lt;/p&gt;
&lt;p&gt;END_VAR&lt;/p&gt;
&lt;p&gt;Gibt es hier eine effektive Lösung ?&lt;/p&gt;&lt;/div&gt;</summary></entry></feed>