<?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[Zugriff auf Member geht net, aber warum ??]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich schreib gerade eine Anwendung und habe dabei ein merkwürdiges Problem.</p>
<p>In einem Dialog gibt es ein Textfeld. Dies ist mit der Klassenvariablem m_Spieler1 verknüpft.</p>
<p>Wenn ich den Inhalt setzen will kommt die Fehlermeldung<br />
„Unbehandelte Ausnahme „ und der Debugger steht in der ATLSIMPSTR.H<br />
in der Zeile<br />
ASSERT(::IsWindow(m_hWnd));</p>
<p>Was soll mir das sagen ??</p>
<p>Dies ist die Funktion</p>
<p>int CAtomServer10Dlg::SpielerAnzeigen(int SpielerNr, CString Name)<br />
{<br />
if (SpielerNr ==1)<br />
{<br />
m_Spieler1.SetString(&quot;Fritz&quot;); &lt;- Fehlerverursachende Zeile<br />
}<br />
UpdateData(FALSE);<br />
return 0;<br />
}</p>
<p>In dieser Funktion funktionierts wie es soll, Fritz wird im Dialog angezeigt.<br />
// Nachricht an einen bestimmten Mitspieler senden<br />
int CAtomServer10Dlg::NachrichtSenden(int Spieler, char *message)<br />
{</p>
<p>m_Spieler1.SetString(&quot;Fritz&quot;);<br />
UpdateData(FALSE);</p>
<p>return 0;<br />
}</p>
<p>Die Klasse CatomServer10Dlg ist von CDialog abgeleitet.<br />
CString m_Spieler1; ist im Abschnitt public definiert.</p>
<p>Irgendwie habe ich gerade Knoten in meinen Gedanken und komme nicht weiter.<br />
Warum ist meine Membervariable nicht da ?? Oder fehlt mir ein Zeiger auf mein Fenster ???</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/201535/zugriff-auf-member-geht-net-aber-warum</link><generator>RSS for Node</generator><lastBuildDate>Mon, 06 Apr 2026 17:40:44 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/201535.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 31 Dec 2007 13:57:57 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Zugriff auf Member geht net, aber warum ?? on Mon, 31 Dec 2007 13:57:57 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich schreib gerade eine Anwendung und habe dabei ein merkwürdiges Problem.</p>
<p>In einem Dialog gibt es ein Textfeld. Dies ist mit der Klassenvariablem m_Spieler1 verknüpft.</p>
<p>Wenn ich den Inhalt setzen will kommt die Fehlermeldung<br />
„Unbehandelte Ausnahme „ und der Debugger steht in der ATLSIMPSTR.H<br />
in der Zeile<br />
ASSERT(::IsWindow(m_hWnd));</p>
<p>Was soll mir das sagen ??</p>
<p>Dies ist die Funktion</p>
<p>int CAtomServer10Dlg::SpielerAnzeigen(int SpielerNr, CString Name)<br />
{<br />
if (SpielerNr ==1)<br />
{<br />
m_Spieler1.SetString(&quot;Fritz&quot;); &lt;- Fehlerverursachende Zeile<br />
}<br />
UpdateData(FALSE);<br />
return 0;<br />
}</p>
<p>In dieser Funktion funktionierts wie es soll, Fritz wird im Dialog angezeigt.<br />
// Nachricht an einen bestimmten Mitspieler senden<br />
int CAtomServer10Dlg::NachrichtSenden(int Spieler, char *message)<br />
{</p>
<p>m_Spieler1.SetString(&quot;Fritz&quot;);<br />
UpdateData(FALSE);</p>
<p>return 0;<br />
}</p>
<p>Die Klasse CatomServer10Dlg ist von CDialog abgeleitet.<br />
CString m_Spieler1; ist im Abschnitt public definiert.</p>
<p>Irgendwie habe ich gerade Knoten in meinen Gedanken und komme nicht weiter.<br />
Warum ist meine Membervariable nicht da ?? Oder fehlt mir ein Zeiger auf mein Fenster ???</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1428564</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1428564</guid><dc:creator><![CDATA[Verwegener]]></dc:creator><pubDate>Mon, 31 Dec 2007 13:57:57 GMT</pubDate></item><item><title><![CDATA[Reply to Zugriff auf Member geht net, aber warum ?? on Wed, 02 Jan 2008 07:27:11 GMT]]></title><description><![CDATA[<p>Das assert sagt nicht das die varaible nicht verfuegbar ist sondern das das element worauf die variable zeigt noch nicht konstruiert und erstellt wurde<br />
ich vermute die verknuepfung zu dem dialog element {ueber die ID} ist nicht richtig</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1429082</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1429082</guid><dc:creator><![CDATA[EXDW]]></dc:creator><pubDate>Wed, 02 Jan 2008 07:27:11 GMT</pubDate></item><item><title><![CDATA[Reply to Zugriff auf Member geht net, aber warum ?? on Wed, 02 Jan 2008 07:31:18 GMT]]></title><description><![CDATA[<p>Danke für die Antwort,<br />
die Dialog ID ist richtig, wird vom Debugger ( beim Asser) mit dem richtigem Wert ausgegeben.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1429083</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1429083</guid><dc:creator><![CDATA[Verwegener]]></dc:creator><pubDate>Wed, 02 Jan 2008 07:31:18 GMT</pubDate></item><item><title><![CDATA[Reply to Zugriff auf Member geht net, aber warum ?? on Wed, 02 Jan 2008 08:56:19 GMT]]></title><description><![CDATA[<p>dann pruefe halt das element obs shcon erstellt wurde<br />
ich vermute weiterhin das du den wert aendern moechtest bevor das fenster fertig erzeugt wurde<br />
amsonsten versuch ma</p>
<pre><code class="language-cpp">CEdit *tst = static_cast&lt;CEdit *&gt;(this-&gt;GetDlgItem(ID_BLA));
if(tst)
    tst-&gt;SetString(_T(&quot;Fasel&quot;));
</code></pre>
<p>evtl war das DDX noch nicht gueltig</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1429119</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1429119</guid><dc:creator><![CDATA[EXDW]]></dc:creator><pubDate>Wed, 02 Jan 2008 08:56:19 GMT</pubDate></item><item><title><![CDATA[Reply to Zugriff auf Member geht net, aber warum ?? on Wed, 02 Jan 2008 09:13:02 GMT]]></title><description><![CDATA[<p>1. Warum this-&gt; ?<br />
2. SetString ist kein (mir bekannter) Member von CEdit!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1429124</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1429124</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Wed, 02 Jan 2008 09:13:02 GMT</pubDate></item><item><title><![CDATA[Reply to Zugriff auf Member geht net, aber warum ?? on Wed, 02 Jan 2008 09:19:28 GMT]]></title><description><![CDATA[<p>1. ist so ne angewohnheit wenn ich auf dialogelemente der eigenen klasse zugreif, koennte auch weg ich weiss<br />
2. mag sein, ich hab nur ein control geraten da oben was von nem textfeld stand, dann hab ich SetText einfach uebernommen - muss nicht stimmen</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1429127</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1429127</guid><dc:creator><![CDATA[EXDW]]></dc:creator><pubDate>Wed, 02 Jan 2008 09:19:28 GMT</pubDate></item><item><title><![CDATA[Reply to Zugriff auf Member geht net, aber warum ?? on Wed, 02 Jan 2008 16:28:17 GMT]]></title><description><![CDATA[<p>So ich hab das mal so geändert</p>
<p>CStatic *tst = (CStatic <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="😉"
    /> GetDlgItem(IDC_SPIELER1);</p>
<p>statt der Zuweisung über die Member</p>
<p>dann passiert dies:</p>
<p>Unbehandelte Ausnahme bei 0x0056341a in AtomServer10.exe:<br />
0xC0000005: Zugriffsverletzung-Leseposition 0x0000001c.</p>
<p>CWnd* CWnd::GetDlgItem(int nID) const<br />
{<br />
ASSERT(::IsWindow(m_hWnd));</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1429434</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1429434</guid><dc:creator><![CDATA[Verwegener]]></dc:creator><pubDate>Wed, 02 Jan 2008 16:28:17 GMT</pubDate></item><item><title><![CDATA[Reply to Zugriff auf Member geht net, aber warum ?? on Wed, 02 Jan 2008 16:36:40 GMT]]></title><description><![CDATA[<p>1. nimm besser static_cast wen du schon cpp proggst<br />
2. hast du den zeiger geprueft ob er gueltig ist bevor du ihn benutzt ?<br />
3. das es bei GetDlgItem meckert ist eigentlich ein gutes zeichen dass das element nicht verfuegbar ist ?!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1429439</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1429439</guid><dc:creator><![CDATA[EXDW]]></dc:creator><pubDate>Wed, 02 Jan 2008 16:36:40 GMT</pubDate></item><item><title><![CDATA[Reply to Zugriff auf Member geht net, aber warum ?? on Wed, 02 Jan 2008 17:52:29 GMT]]></title><description><![CDATA[<p>Seiteneffekt ??</p>
<p>Also ich hab das noch mal probiert.</p>
<p>Die beiden Funktionen werden unterschiedlich aufgerufen.</p>
<p>Die Funktion, wo es mit dem Zugriff auf die Membervariable klappt, wird über einen Button aufgerufen.</p>
<p>Die andere Funktion wird aus einer anderen Klasse aufgerufen.</p>
<p>Diese andere Klasse ist eine Ableitung von CasyncSocket.</p>
<p>Und da ich Socket Verbingen für bis zu 6 Rechner brauch, habe ich dafür ein statisches Klassenarray [6] angelegt. Kommt nun eine bestimmte Zeichenkette in der OnReceive an, so wird diese an die Dialogklasse weitergegeben und in der Dialogklasse ausgewertet. Steht ein bestimmter Inhalt in der Zeichenkette, wird die Funktion, die jetzt das Problem macht, aufgerufen.</p>
<p>Fehlt mir eine Verbindung von einer der Klassen im Array zum Dialog ??</p>
<p>Und wie müsste die aussehen ??</p>
<p>Und gleich noch eine Frage. In meiner Socketklasse sind Behandlungsfunktionen drin, wie aber kann ich jetzt ermitteln, ob ich quasi in der 1 oder 2 oder 3 Instanz meiner Klasse bin ??</p>
<p>Testweise hatte ich jetzt einfach mal die problemfunktion auch stupid über einen Button aufgerufen und das funktioniert problemlos .</p>
<p>Aber ich bin jetzt ratlos.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1429506</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1429506</guid><dc:creator><![CDATA[Verwegener]]></dc:creator><pubDate>Wed, 02 Jan 2008 17:52:29 GMT</pubDate></item></channel></rss>