<?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 mit TSringList zu CStringPointer]]></title><description><![CDATA[<pre><code class="language-cpp">//---------------------------------------------------------------------------

#include &lt;vcl.h&gt;
#pragma hdrstop

#include &quot;Unit1.h&quot;
#include &lt;windows.h&gt;
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource &quot;*.dfm&quot;
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
// String Liste Ereugen
TStringList *Liste = new TStringList();
// Liste aus Datei laden
Liste-&gt;LoadFromFile(&quot;Files.txt&quot;);
// Ausgabe Schleife
for ( int i=0; i &lt; Liste-&gt;Count; i++)
{   // AnsiString in c-String format Speichern
    char *ch = new char[Liste-&gt;Strings[i].Length()+1];
    strcpy(ch, Liste-&gt;Strings[i].c_str());
    // rar.exe aufrufen
    ShellExecute(0,&quot;open&quot;,&quot;rar.exe&quot;,&quot;e -ad &quot; + *ch[Liste-&gt;Strings[i].Length()],0,SW_SHOW);
//Heap freigeben
delete [] ch;
}
}
//---------------------------------------------------------------------------
</code></pre>
<p>also hier will ich wie man sieht auß einem TStringList object dateinamen entnehmen und diese mit ShellExecute dazu zu verwenden, winrar mit parametern auszuführen. ( Ich hab an die 150 files und die will ich nicht alle von hand entpacken ^^ bzw. nicht alle von hand rechts anklicken und dann entpacken in -&gt; ( filename ))</p>
<p>mein problem ist jetzt das *ch den string zwar übernimmt mir bei dieser weise allerdings nur das erste zeichen anzeigt. versuche ich *ch[...] zu schreiben sagt er mir</p>
<blockquote>
<p>[C++ Error] Unit1.cpp(22): E2062 Invalid indirection</p>
</blockquote>
]]></description><link>https://www.c-plusplus.net/forum/topic/195068/problem-mit-tsringlist-zu-cstringpointer</link><generator>RSS for Node</generator><lastBuildDate>Tue, 18 Aug 2026 06:50:42 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/195068.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 13 Oct 2007 16:28:32 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Problem mit TSringList zu CStringPointer on Sat, 13 Oct 2007 16:50:51 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">//---------------------------------------------------------------------------

#include &lt;vcl.h&gt;
#pragma hdrstop

#include &quot;Unit1.h&quot;
#include &lt;windows.h&gt;
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource &quot;*.dfm&quot;
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
// String Liste Ereugen
TStringList *Liste = new TStringList();
// Liste aus Datei laden
Liste-&gt;LoadFromFile(&quot;Files.txt&quot;);
// Ausgabe Schleife
for ( int i=0; i &lt; Liste-&gt;Count; i++)
{   // AnsiString in c-String format Speichern
    char *ch = new char[Liste-&gt;Strings[i].Length()+1];
    strcpy(ch, Liste-&gt;Strings[i].c_str());
    // rar.exe aufrufen
    ShellExecute(0,&quot;open&quot;,&quot;rar.exe&quot;,&quot;e -ad &quot; + *ch[Liste-&gt;Strings[i].Length()],0,SW_SHOW);
//Heap freigeben
delete [] ch;
}
}
//---------------------------------------------------------------------------
</code></pre>
<p>also hier will ich wie man sieht auß einem TStringList object dateinamen entnehmen und diese mit ShellExecute dazu zu verwenden, winrar mit parametern auszuführen. ( Ich hab an die 150 files und die will ich nicht alle von hand entpacken ^^ bzw. nicht alle von hand rechts anklicken und dann entpacken in -&gt; ( filename ))</p>
<p>mein problem ist jetzt das *ch den string zwar übernimmt mir bei dieser weise allerdings nur das erste zeichen anzeigt. versuche ich *ch[...] zu schreiben sagt er mir</p>
<blockquote>
<p>[C++ Error] Unit1.cpp(22): E2062 Invalid indirection</p>
</blockquote>
]]></description><link>https://www.c-plusplus.net/forum/post/1384509</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1384509</guid><dc:creator><![CDATA[Schurke]]></dc:creator><pubDate>Sat, 13 Oct 2007 16:50:51 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit TSringList zu CStringPointer on Sat, 13 Oct 2007 17:08:25 GMT]]></title><description><![CDATA[<p>Warum machen es sich die Leute immer so kompliziert?<br />
Wer hat bloß diese blöden Zeiger erfunden?</p>
<p>Du kannst nicht (weder in C noch in C++) zwei Zeiger addieren (auch &quot;e -ad &quot; ist ein Zeiger).</p>
<p>Also mach es dir einfach und benutze gleich die Methoden der AnsiString-Klasse:</p>
<pre><code class="language-cpp">for(int i=0; i &lt; Liste-&gt;Count; i++)
{
  AnsiString sParams = &quot;e -ad &quot;;
  sParams += Liste-&gt;Strings[i];
  ShellExecute(0,&quot;open&quot;,&quot;rar.exe&quot;, sParams.c_str(),0,SW_SHOW);
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1384527</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1384527</guid><dc:creator><![CDATA[Th]]></dc:creator><pubDate>Sat, 13 Oct 2007 17:08:25 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit TSringList zu CStringPointer on Sat, 13 Oct 2007 17:50:13 GMT]]></title><description><![CDATA[<p>danke <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /><br />
übrigens ich bin auch eher für referenzen ^^ ( aber leide sind diese ja konstant <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="😉"
    /> )</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1384543</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1384543</guid><dc:creator><![CDATA[Schurke]]></dc:creator><pubDate>Sat, 13 Oct 2007 17:50:13 GMT</pubDate></item></channel></rss>