<?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[Speicherleck oder so ! (Problem für Könner)]]></title><description><![CDATA[<p>Habe ein seltsames Problem.<br />
Ich habe eine Anwendung geschrieben, in der ein paar Timer und Treads laufen.<br />
Es werden verschiedenste Dialoge aufgerufen usw.<br />
Eigentlich ist alles bei.</p>
<p>Nun das Problem:<br />
Wenn ich die Anwendung Starte wird der Speicher immer voller. Das entnehme ich dem TaskManager. Eigentlich sollt beim Start nicht viel passieren, aber irgendwiefüllt der sich halt.</p>
<p>Aber damit nicht genug. Nach einer zeit (30 min - 2 Std) gibt es erst Zeichnungsfehler (Titelleiste nimmt hintergrundbilder auf alles verschiebt sich, usw). Bis das Prog schließlich abstürst (wahrschenlich speicher voll)</p>
<p>Kann mir jemand helfen?<br />
Oder weiß jemand, ob ich im Debugmodus den Speicher überwachen kann, und sehe von welcher stelle er beschrieben wird?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/80669/speicherleck-oder-so-problem-für-könner</link><generator>RSS for Node</generator><lastBuildDate>Fri, 17 Apr 2026 19:44:01 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/80669.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 23 Jul 2004 11:03:48 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Speicherleck oder so ! (Problem für Könner) on Fri, 23 Jul 2004 11:03:48 GMT]]></title><description><![CDATA[<p>Habe ein seltsames Problem.<br />
Ich habe eine Anwendung geschrieben, in der ein paar Timer und Treads laufen.<br />
Es werden verschiedenste Dialoge aufgerufen usw.<br />
Eigentlich ist alles bei.</p>
<p>Nun das Problem:<br />
Wenn ich die Anwendung Starte wird der Speicher immer voller. Das entnehme ich dem TaskManager. Eigentlich sollt beim Start nicht viel passieren, aber irgendwiefüllt der sich halt.</p>
<p>Aber damit nicht genug. Nach einer zeit (30 min - 2 Std) gibt es erst Zeichnungsfehler (Titelleiste nimmt hintergrundbilder auf alles verschiebt sich, usw). Bis das Prog schließlich abstürst (wahrschenlich speicher voll)</p>
<p>Kann mir jemand helfen?<br />
Oder weiß jemand, ob ich im Debugmodus den Speicher überwachen kann, und sehe von welcher stelle er beschrieben wird?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/566754</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/566754</guid><dc:creator><![CDATA[haedfinger]]></dc:creator><pubDate>Fri, 23 Jul 2004 11:03:48 GMT</pubDate></item><item><title><![CDATA[Reply to Speicherleck oder so ! (Problem für Könner) on Fri, 23 Jul 2004 11:19:44 GMT]]></title><description><![CDATA[<p>Wenn du mit F5 startest und ohne Absturz beendest, was steht dann in der Ausgabe? Dort werden dir Speicherlecks gezeigt.</p>
<p>Ansonsten weiß ich keinen Rat.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/566772</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/566772</guid><dc:creator><![CDATA[estartu]]></dc:creator><pubDate>Fri, 23 Jul 2004 11:19:44 GMT</pubDate></item><item><title><![CDATA[Reply to Speicherleck oder so ! (Problem für Könner) on Fri, 23 Jul 2004 11:45:07 GMT]]></title><description><![CDATA[<p>Da steht nichts.<br />
Das war auch das erste, auf das ich geachtet habe.</p>
<p>Ist echt fieß die Geschichte.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/566802</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/566802</guid><dc:creator><![CDATA[haedfinger]]></dc:creator><pubDate>Fri, 23 Jul 2004 11:45:07 GMT</pubDate></item><item><title><![CDATA[Reply to Speicherleck oder so ! (Problem für Könner) on Fri, 23 Jul 2004 11:56:50 GMT]]></title><description><![CDATA[<p>Dann ist es Fleißarbeit. Sorry und mein Beileid. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
<p>Grr, falscher Knopf:<br />
Also, guck ob du in keiner Datei Debugnew vergessen hast.</p>
<pre><code class="language-cpp">#ifdef _DEBUG
#define new DEBUG_NEW
</code></pre>
<p>Und DCs musst du wieder freigeben, sonst springt er auch in die Bresche...</p>
<p>naja, den Rest Tips mit &quot;Hast du für jedes new auch ein delete&quot; solltest du ja kennen. <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="🙂"
    /></p>
<p>Viel Erfolg</p>
]]></description><link>https://www.c-plusplus.net/forum/post/566804</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/566804</guid><dc:creator><![CDATA[estartu]]></dc:creator><pubDate>Fri, 23 Jul 2004 11:56:50 GMT</pubDate></item><item><title><![CDATA[Reply to Speicherleck oder so ! (Problem für Könner) on Fri, 23 Jul 2004 11:52:42 GMT]]></title><description><![CDATA[<p>Sieh mal im taskmanager nach was genau das hoch zählt. Nur die Speichernutzung oder auch Handles, Threads, GDI-Objecte, ect?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/566810</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/566810</guid><dc:creator><![CDATA[CMatt]]></dc:creator><pubDate>Fri, 23 Jul 2004 11:52:42 GMT</pubDate></item><item><title><![CDATA[Reply to Speicherleck oder so ! (Problem für Könner) on Fri, 23 Jul 2004 14:56:28 GMT]]></title><description><![CDATA[<p>Habe was gefunden.<br />
Ich habe folgendes in einem Timer.</p>
<pre><code class="language-cpp">CButton *ErrBut = (CButton*)GetDlgItem(IDC_FEHLER_GM);
	/////////////////////////////////////////////
	// Fehlerlicht ein- ausblenden

	if(m_pBasis-&gt;m_bAktiverFehler == true)
	{
		bitmap = ::LoadBitmap(::AfxGetInstanceHandle(), MAKEINTRESOURCE(IDB_ROT));
		bitmap2 = ::LoadBitmap(::AfxGetInstanceHandle(), MAKEINTRESOURCE(NULL));	
		GetMainWindow()-&gt;UpdateWinMainData();
	}
	else
	{
		bitmap = ::LoadBitmap(::AfxGetInstanceHandle(), MAKEINTRESOURCE(NULL));
		bitmap2 = ::LoadBitmap(::AfxGetInstanceHandle(), MAKEINTRESOURCE(IDB_GRUEN));
		GetMainWindow()-&gt;UpdateWinMainData();
	}

	ErrBut-&gt;SetBitmap(bitmap);
</code></pre>
<p>Muß ich da Irgendwas deleten?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/566976</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/566976</guid><dc:creator><![CDATA[haedfinger]]></dc:creator><pubDate>Fri, 23 Jul 2004 14:56:28 GMT</pubDate></item><item><title><![CDATA[Reply to Speicherleck oder so ! (Problem für Könner) on Fri, 23 Jul 2004 15:01:48 GMT]]></title><description><![CDATA[<p>ein DeleteObject wenn die bitmap nicht mehr beötigt wird wäre sicher nicht schlecht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/566979</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/566979</guid><dc:creator><![CDATA[CMatt]]></dc:creator><pubDate>Fri, 23 Jul 2004 15:01:48 GMT</pubDate></item><item><title><![CDATA[Reply to Speicherleck oder so ! (Problem für Könner) on Fri, 23 Jul 2004 15:17:28 GMT]]></title><description><![CDATA[<p>Also in etwa so!?</p>
<p>.<br />
..<br />
...</p>
<pre><code class="language-cpp">GetMainWindow()-&gt;UpdateWinMainData(); 
    } 
    else 
    { 
        bitmap = ::LoadBitmap(::AfxGetInstanceHandle(), MAKEINTRESOURCE(NULL)); 
        bitmap2 = ::LoadBitmap(::AfxGetInstanceHandle(), MAKEINTRESOURCE(IDB_GRUEN)); 
        GetMainWindow()-&gt;UpdateWinMainData(); 
    } 

    ErrBut-&gt;SetBitmap(bitmap);

DeleteObject(bitmap);
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/566986</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/566986</guid><dc:creator><![CDATA[haedfinger]]></dc:creator><pubDate>Fri, 23 Jul 2004 15:17:28 GMT</pubDate></item><item><title><![CDATA[Reply to Speicherleck oder so ! (Problem für Könner) on Fri, 23 Jul 2004 15:56:25 GMT]]></title><description><![CDATA[<p>Hmm.<br />
Ich habe jetzt das</p>
<pre><code class="language-cpp">DeleteObject(bitmap);
</code></pre>
<p>eingebaut, aber dennoch wird der Speicher weiter belastet.</p>
<p>Ich schreibe einfach mal den kompletten Quelltext hier rein, vielleicht hat jemand ne Idee.</p>
<pre><code class="language-cpp">void CTestDlg::OnTimer(UINT nIDEvent) 
{
	HBITMAP bitmap,bitmap2;
	CButton *BusyBut;
	bitmap = ::LoadBitmap(::AfxGetInstanceHandle(), MAKEINTRESOURCE(IDB_GRUEN));
	bitmap2 = ::LoadBitmap(::AfxGetInstanceHandle(), MAKEINTRESOURCE(NULL));
	bool	bProgrammeNichtImAutomodus=true;
	long	lWert;
 	CString	str;

	// ST-Fenster schließen falls Admin angemeldet ist und Progfenster offen.
	CPassword Passwort;
	if (Passwort.isLeader () &amp;&amp; m_pActualStationDlg!= NULL &amp;&amp; m_pActualStationDlg-&gt;m_pProgDlg!= NULL)	
		if( m_pActualStationDlg-&gt;m_pProgDlg-&gt;IsWindowVisible() == true)
			m_pActualStationDlg-&gt;ShowWindow(SW_HIDE);

	if(m_pActualStationDlg!=NULL)	
		m_pActualStationDlg-&gt;ChangeStatus();

	for(int i=0;i&lt;m_pBasis-&gt;m_iStationsAnz;i++)
	{
		BusyBut = (CButton*)GetDlgItem(IDC_BUSY1 + i);
		if((	(*((m_pBasis-&gt;m_ppStation)+i))-&gt;m_programm.IsProgramRunning()))
		{
			 BusyBut-&gt;SetBitmap(bitmap);
			 bProgrammeNichtImAutomodus=false;
		}
		else
			BusyBut-&gt;SetBitmap(bitmap2);
	}

	if(bProgrammeNichtImAutomodus)
		m_ctlZyklusende.SetCheck(false);
	(*((m_pBasis-&gt;m_ppStation)+4))-&gt;ProzessdatenLesen(1, &amp;lWert);
	commafmt(str.GetBuffer(20), 20, lWert);
	GetDlgItem(IDC_EDIT11)-&gt;SetWindowText(str);

	(*((m_pBasis-&gt;m_ppStation)+4))-&gt;ProzessdatenLesen(2, &amp;lWert);
	commafmt(str.GetBuffer(20), 20, lWert);
	GetDlgItem(IDC_EDIT12)-&gt;SetWindowText(str);

	BOOL bVal;

	m_pBasis-&gt;m_digitalio.m_AtnData.LeseEingang(7,  bVal);
	if( bVal == 1)
	{

		for (int i=0 ; i &lt; 5 ; i++)
			(*((m_pBasis-&gt;m_ppStation)+i))-&gt;m_programm.SetProcessStopFlag( true);

	}
	else
	{

		for ( i=0 ; i &lt; 5 ; i++)
			(*((m_pBasis-&gt;m_ppStation)+i))-&gt;m_programm.SetProcessStopFlag( false);
	}

	CButton *ErrBut = (CButton*)GetDlgItem(IDC_FEHLER_GM);
	/////////////////////////////////////////////
	// Fehlerlicht ein- ausblenden

	if(m_pBasis-&gt;m_bAktiverFehler == true)
	{
		bitmap = ::LoadBitmap(::AfxGetInstanceHandle(), MAKEINTRESOURCE(IDB_ROT));
		bitmap2 = ::LoadBitmap(::AfxGetInstanceHandle(), MAKEINTRESOURCE(NULL));	
		GetMainWindow()-&gt;UpdateWinMainData();
	}
	else
	{
		bitmap = ::LoadBitmap(::AfxGetInstanceHandle(), MAKEINTRESOURCE(NULL));
		bitmap2 = ::LoadBitmap(::AfxGetInstanceHandle(), MAKEINTRESOURCE(IDB_GRUEN));
		GetMainWindow()-&gt;UpdateWinMainData();
	}

	ErrBut-&gt;SetBitmap(bitmap);
	DeleteObject(bitmap);

	CDialog::OnTimer(nIDEvent);
}
</code></pre>
<p>Hoffe es ist alles klar!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/567016</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/567016</guid><dc:creator><![CDATA[haedfinger]]></dc:creator><pubDate>Fri, 23 Jul 2004 15:56:25 GMT</pubDate></item><item><title><![CDATA[Reply to Speicherleck oder so ! (Problem für Könner) on Mon, 26 Jul 2004 09:57:21 GMT]]></title><description><![CDATA[<p>CMatt schrieb:</p>
<blockquote>
<p>Sieh mal im taskmanager nach was genau das hoch zählt. Nur die Speichernutzung oder auch Handles, Threads, GDI-Objecte, ect?</p>
</blockquote>
<p>Das Problem besteht immernoch ,und ich habe ein echtes Problem mit den GDI Objekten.<br />
Welche sich das? Und warum zählen die hoch?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/568326</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/568326</guid><dc:creator><![CDATA[haedfinger]]></dc:creator><pubDate>Mon, 26 Jul 2004 09:57:21 GMT</pubDate></item><item><title><![CDATA[Reply to Speicherleck oder so ! (Problem für Könner) on Mon, 26 Jul 2004 11:52:08 GMT]]></title><description><![CDATA[<p>OK.<br />
Danke an die diemir geholfen haben.<br />
Manchmal brauch man nur nen denkanstoß.</p>
<p>Danke CMatt</p>
<p>Habe folgendes vergessen:</p>
<pre><code class="language-cpp">pDC-&gt;DeleteDC();
	pDC = NULL;
</code></pre>
<p>Blöd aber verhängnisvoll</p>
]]></description><link>https://www.c-plusplus.net/forum/post/568401</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/568401</guid><dc:creator><![CDATA[haedfinger]]></dc:creator><pubDate>Mon, 26 Jul 2004 11:52:08 GMT</pubDate></item></channel></rss>