<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Binary Read &#x2F; Write]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich hab mir aus den Forum-Beiträgen was zusammengesucht. Ich will eine Datei zunächst unbrauchbar machen für das Anwendungsprogramm, indem ich einfach ein paar Zeichen ans Dateiende anhänge. Wie kann ich die neue Datei aber jetzt wieder auslesen ohne die 4 Zeichen am Ende, damit sie wieder funktionsfähig ist ?</p>
<p>Danke, stern</p>
<pre><code>// Quelldatei
   ifstream FileInCopy(&quot;Vokabeln.mdb&quot;, ios::binary);

   // Zieldatei
   ofstream FileOutCopy(&quot;Vokabeln_Chiff.mdb&quot;, ios::binary);

   if (FileInCopy)
      FileOutCopy &lt;&lt; FileInCopy.rdbuf();

   string NachName = &quot;Juhu&quot;;

   fstream File(&quot;Vokabeln_Chiff.mdb&quot;, ios::out|ios::binary);
   File.write((const char*)&amp;NachName, sizeof(NachName));
   File.close();
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/160205/binary-read-write</link><generator>RSS for Node</generator><lastBuildDate>Fri, 11 Sep 2026 05:31:40 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/160205.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 22 Sep 2006 23:04:54 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Binary Read &#x2F; Write on Fri, 22 Sep 2006 23:04:54 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich hab mir aus den Forum-Beiträgen was zusammengesucht. Ich will eine Datei zunächst unbrauchbar machen für das Anwendungsprogramm, indem ich einfach ein paar Zeichen ans Dateiende anhänge. Wie kann ich die neue Datei aber jetzt wieder auslesen ohne die 4 Zeichen am Ende, damit sie wieder funktionsfähig ist ?</p>
<p>Danke, stern</p>
<pre><code>// Quelldatei
   ifstream FileInCopy(&quot;Vokabeln.mdb&quot;, ios::binary);

   // Zieldatei
   ofstream FileOutCopy(&quot;Vokabeln_Chiff.mdb&quot;, ios::binary);

   if (FileInCopy)
      FileOutCopy &lt;&lt; FileInCopy.rdbuf();

   string NachName = &quot;Juhu&quot;;

   fstream File(&quot;Vokabeln_Chiff.mdb&quot;, ios::out|ios::binary);
   File.write((const char*)&amp;NachName, sizeof(NachName));
   File.close();
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1142908</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1142908</guid><dc:creator><![CDATA[hp_stern]]></dc:creator><pubDate>Fri, 22 Sep 2006 23:04:54 GMT</pubDate></item><item><title><![CDATA[Reply to Binary Read &#x2F; Write on Fri, 22 Sep 2006 23:32:31 GMT]]></title><description><![CDATA[<p>um 4 Byte verkleinern</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1142912</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1142912</guid><dc:creator><![CDATA[ä]]></dc:creator><pubDate>Fri, 22 Sep 2006 23:32:31 GMT</pubDate></item><item><title><![CDATA[Reply to Binary Read &#x2F; Write on Fri, 22 Sep 2006 23:35:12 GMT]]></title><description><![CDATA[<p>Von der Logik her klar, aber leider hab ich keinen Ansatz dafür. Ich muss die erstellte und erweiterte Datei ja neu schreiben ohne die 4 Zeichen. Also geht FileOutCopy dann ja nicht sonder ich muss es zeichenweise machen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1142914</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1142914</guid><dc:creator><![CDATA[hp_stern]]></dc:creator><pubDate>Fri, 22 Sep 2006 23:35:12 GMT</pubDate></item><item><title><![CDATA[Reply to Binary Read &#x2F; Write on Sat, 23 Sep 2006 04:46:37 GMT]]></title><description><![CDATA[<p>Nur mal so als Tipp: Nur weil die Datei 4 Bytes zu viel hat, heißt das nicht unbedingt, dass sie &quot;unbrauchbar&quot; ist...</p>
<pre><code class="language-cpp">int hsrc = open(&quot;C:\\DATEI&quot; ,O_RDONLY | O_BINARY, S_IWRITE | S_IREAD);

struct	stat	sz;
stat(&quot;C:\\DATEI&quot; , &amp;sz);

void *srcFile;
srcFile = malloc(sz.st_size);

read(hsrc,srcFile,sz.st_size-4);
</code></pre>
<p>Wie auch schon im BCB-Forum geschrieben, würe ich die Datei verschlüsseln...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1142929</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1142929</guid><dc:creator><![CDATA[GCoder]]></dc:creator><pubDate>Sat, 23 Sep 2006 04:46:37 GMT</pubDate></item><item><title><![CDATA[Reply to Binary Read &#x2F; Write on Sat, 23 Sep 2006 10:33:41 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>unbrauchbar für Access ist sie dadurch, da Access dann diese Datei nicht mehr als Datenbank erkennt. Hintergrund ist, dass Access keine MDE Datei erstellen kann und somit jeder die Datenbank verändern könnte. Daher mein Ansatz wie im BCB-Forum geschrieben. Dennoch wird mir auch ein Verschlüsseln nicht helfen, da ich die Datei danach ja wieder entschlüsselt erstelle und sie dann an Access übergebe. In dem Moment kann dann jeder die Datenbank kopieren.</p>
<p>Danke für den Code !</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1142998</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1142998</guid><dc:creator><![CDATA[stern]]></dc:creator><pubDate>Sat, 23 Sep 2006 10:33:41 GMT</pubDate></item><item><title><![CDATA[Reply to Binary Read &#x2F; Write on Sat, 23 Sep 2006 12:59:23 GMT]]></title><description><![CDATA[<p>Warum muss es denn unnbedingt &quot;Access&quot; sein?</p>
<p>Wenn du einem User irgendwelche Daten mitteilst, kann er diese auch per Hand einfach kopieren.</p>
<p>Sag doch mal worum es dir geht? Wozu das alles?<br />
(vlt. findet sich eine andere Lösung...)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1143061</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1143061</guid><dc:creator><![CDATA[GCoder]]></dc:creator><pubDate>Sat, 23 Sep 2006 12:59:23 GMT</pubDate></item><item><title><![CDATA[Reply to Binary Read &#x2F; Write on Sat, 23 Sep 2006 19:17:44 GMT]]></title><description><![CDATA[<p>Hi,</p>
<p>wir haben mehrere Programme in Access erstellt. In der einen Datenbank sind jeweils die Formulare, Berichte und der Quellcode usw. In der anderen werden nur die Datentabellen gepflegt. Die Tabellen sind in der Hauptdatenbank als Verknüpfung integriert. Access kann aus der Hauptdatenbank aber leider keine MDE-Datei machen. Mit dieser wäre sichergestellt, dass der Anwender nicht auf Formular / Quellcodeebene kommt um eigene Modifizierungen vorzunehmen.</p>
<p>Daher mein Gedanke die Datenbank z. B. zu verschlüsseln, sie dann komplett entschlüsselt in den Speicher zu laden und diesen Speicherbereich dann an Access zu übergeben. In Word ist es ähnlich gelagert. Durch die Verknüpfungen würde der Zugriff auf die Daten weiterhin funktionieren, ebenso das Ändern des Datenbestandes.</p>
<p>Wenn ich aber jetzt die DB verschlüssel und dann zur Laufzeit mittels BCB wieder entschlüsselt auf die Platte speichere, kann der Anwender die Datenbank sehen und kopieren.</p>
<p>Normalerweise ist mein Frontend in BCB erstellt und die Daten liegen in einer Access-DB. Aber bei einigen Programmen ist es eben anders und diese sind sehr umfangreich, so dass ein Umsetzen auf BCB Plattform derzeit nicht zur Diskussion steht.</p>
<p>stern</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1143218</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1143218</guid><dc:creator><![CDATA[hp_stern]]></dc:creator><pubDate>Sat, 23 Sep 2006 19:17:44 GMT</pubDate></item><item><title><![CDATA[Reply to Binary Read &#x2F; Write on Sat, 23 Sep 2006 19:30:55 GMT]]></title><description><![CDATA[<p>Zusammengefasst:<br />
Du hast eine Datei, die werder kopiert, noch modifiziert werden soll. Also verschlüsselst du diese. Wenn du sie wieder entschlüsselst, willst du nicht, dass man Zugriff darauf hat.</p>
<p>Also: Es gibt da eine möglichkeit, dateien für lese/schreibzugriffe zu speeren.<br />
Google mal nach &quot;Lock Files&quot; oder so.<br />
1. Du entschlüsselst die Datei, speicherst diese auf der Platte<br />
2. Du lädst die Datei<br />
3. Du sperrst die Datei für Dateizugriffe</p>
<p>Der user tut was...</p>
<p>4. Du schließst die Date<br />
5. Du löschst die Date</p>
<p>sry, wenn ich etwas merkwürdig schreibe^^</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1143222</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1143222</guid><dc:creator><![CDATA[GCoder]]></dc:creator><pubDate>Sat, 23 Sep 2006 19:30:55 GMT</pubDate></item><item><title><![CDATA[Reply to Binary Read &#x2F; Write on Sat, 23 Sep 2006 19:34:47 GMT]]></title><description><![CDATA[<p>Hi,</p>
<p>genau so ist es. Wenn ich die Datei über eienn Lock sperren kann, kann der Anwender aber immer noch die einzelenn Programmteile exportieren. Aber ich werde mal danach suchen und es damit testen.</p>
<p>Danke</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1143226</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1143226</guid><dc:creator><![CDATA[hp_stern]]></dc:creator><pubDate>Sat, 23 Sep 2006 19:34:47 GMT</pubDate></item><item><title><![CDATA[Reply to Binary Read &#x2F; Write on Mon, 25 Sep 2006 09:31:22 GMT]]></title><description><![CDATA[<p>Übrigens bekommst du nicht das richtige Ergebnis, wenn du sizeof() auf eine String-Variable anwendest - damit erhältst du die Größe der Kontrollstuktur (dürften ein Zeiger und zwei int's sein) und nicht der aktuellen Daten.</p>
<p>(wenn du wissen willst, wieviel Text der String hat, kannst du size() verwenden)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1143870</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1143870</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Mon, 25 Sep 2006 09:31:22 GMT</pubDate></item></channel></rss>