<?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[Problem beim erstellen eines Filestreams]]></title><description><![CDATA[<p>Hi,<br />
ich wollte mal nen bisschen mit den Filestreams rumspielen, hab mir also Hilfe angeschaut und so.<br />
Hab auch nen Stream zum Einlesen problemlos erstellen können:</p>
<pre><code class="language-cpp">TFileStream* readfile = new TFileStream(filename,MAKEWORD(fmOpenRead,fmShareDenyWrite));
</code></pre>
<p>Allerdings komme ich mit nem Stream zum schreiben nicht so recht klar:</p>
<pre><code class="language-cpp">TFileStream* writefile = new TFileStream(&quot;.\\&quot;+recv_filename,MAKEWORD(fmCreate,fmShareExclusive));
</code></pre>
<p>Da wirft er mir zur Laufzeit immer ne Exception.<br />
Ich klär noch schnell die Variablen zur besseren Übersicht:<br />
<strong>filename</strong> ist eine kommplette Pfadangabe, also z.B. <em>C:\dokumente\streamsmachenprobleme.pdf</em></p>
<p><strong>recv_filename</strong> ist nur ein Dateiname, also z.B. <em>streamsmachenprobleme.pdf</em></p>
<p>Mehr ungeklärte Variablen dürften in dem kleinen Codezeilchen nicht zu finden sein.</p>
<p>Hoffe ihr könnt meinen Fehler finden.</p>
<p>THX!</p>
<p>edit: hab grad noch weiter getestet, auch wenn ich am writestream ne absolute Pfadangabe verwende (die für mich aber eh ungeeignet wäre) wirft er die exception.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/78633/problem-beim-erstellen-eines-filestreams</link><generator>RSS for Node</generator><lastBuildDate>Mon, 29 Jun 2026 18:54:15 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/78633.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 03 Jul 2004 13:03:58 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Problem beim erstellen eines Filestreams on Sat, 03 Jul 2004 13:07:28 GMT]]></title><description><![CDATA[<p>Hi,<br />
ich wollte mal nen bisschen mit den Filestreams rumspielen, hab mir also Hilfe angeschaut und so.<br />
Hab auch nen Stream zum Einlesen problemlos erstellen können:</p>
<pre><code class="language-cpp">TFileStream* readfile = new TFileStream(filename,MAKEWORD(fmOpenRead,fmShareDenyWrite));
</code></pre>
<p>Allerdings komme ich mit nem Stream zum schreiben nicht so recht klar:</p>
<pre><code class="language-cpp">TFileStream* writefile = new TFileStream(&quot;.\\&quot;+recv_filename,MAKEWORD(fmCreate,fmShareExclusive));
</code></pre>
<p>Da wirft er mir zur Laufzeit immer ne Exception.<br />
Ich klär noch schnell die Variablen zur besseren Übersicht:<br />
<strong>filename</strong> ist eine kommplette Pfadangabe, also z.B. <em>C:\dokumente\streamsmachenprobleme.pdf</em></p>
<p><strong>recv_filename</strong> ist nur ein Dateiname, also z.B. <em>streamsmachenprobleme.pdf</em></p>
<p>Mehr ungeklärte Variablen dürften in dem kleinen Codezeilchen nicht zu finden sein.</p>
<p>Hoffe ihr könnt meinen Fehler finden.</p>
<p>THX!</p>
<p>edit: hab grad noch weiter getestet, auch wenn ich am writestream ne absolute Pfadangabe verwende (die für mich aber eh ungeeignet wäre) wirft er die exception.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/552338</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/552338</guid><dc:creator><![CDATA[Auron_X]]></dc:creator><pubDate>Sat, 03 Jul 2004 13:07:28 GMT</pubDate></item><item><title><![CDATA[Reply to Problem beim erstellen eines Filestreams on Sat, 03 Jul 2004 20:13:50 GMT]]></title><description><![CDATA[<p>Wenn dann würde ich solche Versuche mit dem Standard C++ (STL ifstream,ofstream) machen. Das geht ganz sicher und funktioniert auch noch wenn die VCL ausgestorben ist.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/552636</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/552636</guid><dc:creator><![CDATA[gh]]></dc:creator><pubDate>Sat, 03 Jul 2004 20:13:50 GMT</pubDate></item><item><title><![CDATA[Reply to Problem beim erstellen eines Filestreams on Sat, 03 Jul 2004 21:37:17 GMT]]></title><description><![CDATA[<p>ja, nur das die ja zu dem ganzen VCL kram inkompatibel sind, d.h. keine AnsiStrings usw. (zumindest hab ichs nit hinbekommen).<br />
Sonst hätte ich auch die verwendet.</p>
<p>btw. irgendwie würde mich jetzt aber trotzdem interessieren was ich bei diesen Streams falsch gemacht habe, weil gehn muss es ja trotzdem.</p>
<p>Gruß<br />
Auron</p>
]]></description><link>https://www.c-plusplus.net/forum/post/552668</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/552668</guid><dc:creator><![CDATA[Auron_X]]></dc:creator><pubDate>Sat, 03 Jul 2004 21:37:17 GMT</pubDate></item><item><title><![CDATA[Reply to Problem beim erstellen eines Filestreams on Sun, 04 Jul 2004 14:44:48 GMT]]></title><description><![CDATA[<p>Auron_X schrieb:</p>
<blockquote>
<p>Da wirft er mir zur Laufzeit immer ne Exception.</p>
</blockquote>
<p><strong>Komplette</strong> Meldung?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/552955</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/552955</guid><dc:creator><![CDATA[Jansen]]></dc:creator><pubDate>Sun, 04 Jul 2004 14:44:48 GMT</pubDate></item><item><title><![CDATA[Reply to Problem beim erstellen eines Filestreams on Sun, 04 Jul 2004 21:18:57 GMT]]></title><description><![CDATA[<p>tjo, das ursprüngliche Problem war nciht korrekt ermittelt worden und lag woanders, aber jetzt habe ich nen weiteres Problem auf den writestream eingrenzen können, fehlermeldung is nicht so recht erkennbar.<br />
Ich hab nen vollständig grauen Bildschirm und am rechten unteren Bildschirmbereich lässt sich nen zahlen/buchstabensalat und darunter das wort stream (ich seh nur tream) erahnen.<br />
Ziemlich komisch, das exceptionfenster kommt nicht.<br />
Wollt ihr nen Screenshot?<br />
Ich konnte das Problem auf diesen Bereich eingrenzen können:</p>
<pre><code class="language-cpp">TFileStream* writefile = new TFileStream(&quot;.\\incoming\\&quot;+recv_filename, fmCreate|fmShareExclusive);
  writefile-&gt;Seek(0,soFromEnd);
  writefile-&gt;WriteBuffer(content.c_str(),content.Length());
  delete writefile;
</code></pre>
<p>kurze erläuterung:<br />
content = daten die geschrieben werden sollen</p>
<p>anfangs meinte er er könne die datei nciht erstellen, also hab ich ne abfrage eingebaut die prüft ob das Verz. incoming bereits existiert und es andersfalls erstellt.</p>
<p>Gruß<br />
Auron</p>
]]></description><link>https://www.c-plusplus.net/forum/post/553250</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/553250</guid><dc:creator><![CDATA[Auron_X]]></dc:creator><pubDate>Sun, 04 Jul 2004 21:18:57 GMT</pubDate></item><item><title><![CDATA[Reply to Problem beim erstellen eines Filestreams on Sun, 04 Jul 2004 21:56:28 GMT]]></title><description><![CDATA[<p>Auron_X schrieb:</p>
<blockquote>
<p>Wollt ihr nen Screenshot?</p>
</blockquote>
<p>Aus deiner Beschreibung werde ich jedenfalls nicht schlau. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /><br />
Wann bzw. wo genau tritt das Problem denn auf?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/553265</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/553265</guid><dc:creator><![CDATA[Jansen]]></dc:creator><pubDate>Sun, 04 Jul 2004 21:56:28 GMT</pubDate></item><item><title><![CDATA[Reply to Problem beim erstellen eines Filestreams on Mon, 05 Jul 2004 05:54:36 GMT]]></title><description><![CDATA[<p>ich weiß es zwar nicht aber probier mal nur einen Modus beim erstellen der Datei mitzugeben.</p>
<p>Also zuerst mit fmCreate und danach (bei einem 2. Objekt) dann mit (fmOpenWrite|fmShareXXX).</p>
<pre><code>TFileStream *creator = new TFileStream(fileName, fmCreate);
  delete creator;

  TFileStream *writer = new TFileStream(fileName, fmOpenWrite|fmShareXXX);

  // do something

  delete writer;
</code></pre>
<p>ich hoffe das hilft</p>
<p>cu Errraddicator</p>
]]></description><link>https://www.c-plusplus.net/forum/post/553319</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/553319</guid><dc:creator><![CDATA[Errraddicator]]></dc:creator><pubDate>Mon, 05 Jul 2004 05:54:36 GMT</pubDate></item><item><title><![CDATA[Reply to Problem beim erstellen eines Filestreams on Mon, 05 Jul 2004 07:43:12 GMT]]></title><description><![CDATA[<p>Folgendes Beispiel schreibt den Inhalt eines TMemos in eine Datei:</p>
<pre><code class="language-cpp">AnsiString asFileNameAndPath = asFilePath + asFileName;
	TFileStream* myfs = NULL;
	char* myfsbuf = NULL;
	int iBufSize;
	try
	{
		try
		{
			myfsbuf = Memo1-&gt;Lines-&gt;GetText();
			myfsbuf = asTemp.c_str();
			iBufSize = strlen(myfsbuf);
			myfs = new TFileStream(asFileNameAndPath, fmCreate|fmShareExclusive);
			if (myfs)
			{
				myfs-&gt;Position = 0;
				myfs-&gt;Write((void*) myfsbuf, iBufSize);
			}
		}
		catch(...)
		{
			ShowMessage(&quot;Fehler beim Schreiben der Datei.&quot;);
		}
	}
	__finally
	{
		if (myfs)
			delete myfs;
	}
</code></pre>
<p>Es muß nicht explizit überprüft ob die Datei existiert oder nicht, respektive die Datei muß nicht explizit erstellt werden. Sollte die Datei bereits existieren, wird sie bei fmCreate im Schreibmodus geöffnet. Das gilt nicht, wenn das Verzeichnis nicht existiert!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/553356</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/553356</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Mon, 05 Jul 2004 07:43:12 GMT</pubDate></item><item><title><![CDATA[Reply to Problem beim erstellen eines Filestreams on Mon, 05 Jul 2004 09:51:50 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/52">@Jansen</a>: ich werde aus <a href="http://public.juenger-der-neuzeit.de/auron/komischerfehler.gif" rel="nofollow">dieser Fehlermeldung (klick mich!)</a> nicht schlau ^^<br />
also es tritt in diesem Codeabschnitt auf:</p>
<pre><code class="language-cpp">TFileStream* writefile = new TFileStream(&quot;.\\incoming\\&quot;+recv_filename, fmCreate|fmShareExclusive);
  writefile-&gt;Seek(0,soFromEnd);
  writefile-&gt;WriteBuffer(content.c_str(),content.Length());
  delete writefile;
</code></pre>
<p>@alleanderen: thx, ich werds mal probieren.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/553465</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/553465</guid><dc:creator><![CDATA[Auron_X]]></dc:creator><pubDate>Mon, 05 Jul 2004 09:51:50 GMT</pubDate></item><item><title><![CDATA[Reply to Problem beim erstellen eines Filestreams on Mon, 05 Jul 2004 12:25:44 GMT]]></title><description><![CDATA[<p>Auron_X schrieb:</p>
<blockquote>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/52">@Jansen</a>: ich werde aus <a href="http://public.juenger-der-neuzeit.de/auron/komischerfehler.gif" rel="nofollow">dieser Fehlermeldung (klick mich!)</a> nicht schlau</p>
</blockquote>
<p>Hmm, sowas habe ich noch nie gesehen. Das bedeckt den ganzen Bildschirm?<br />
Könntest du ggf. mal ein kleines Beispielprojekt bereitstellen (mit fertiger Exe), das dieses Verhalten zeigt?</p>
<p>Auf Verdacht würde ich sagen, dass entweder an deiner BCB-Installation oder am Windows-System etwas faul ist. Hast du das Programm mal auf einem anderen Rechner getestet?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/553575</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/553575</guid><dc:creator><![CDATA[Jansen]]></dc:creator><pubDate>Mon, 05 Jul 2004 12:25:44 GMT</pubDate></item><item><title><![CDATA[Reply to Problem beim erstellen eines Filestreams on Mon, 05 Jul 2004 17:07:45 GMT]]></title><description><![CDATA[<p>also ich vermute, dass es vom BCB kommt, also zumindest nicht direkt von meinem Programm, wenn ich die nächsten Tage mein Notebook wieder ins Netzwerk anschließe werd ichs darauf testen.</p>
<p>Wenn das allerdings nichts weiter bringt werde ich den Source nochmal neu schreiben, da durch meine vielen vergeblichen Experimente mit den Dateien inzwischen nen undurchsichtiger Wust entstanden ist.</p>
<p>Trotzdem Danke für eure zahlreichen Hilfsversuche, zumindest is mir inzwischen klar wies aussehen müsste wenns funktioniert ^^</p>
<p>Gruß<br />
Auron</p>
]]></description><link>https://www.c-plusplus.net/forum/post/553817</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/553817</guid><dc:creator><![CDATA[Auron_X]]></dc:creator><pubDate>Mon, 05 Jul 2004 17:07:45 GMT</pubDate></item></channel></rss>