<?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[[Gelöst] GetWindowRect Heap beschädigung o_O??]]></title><description><![CDATA[<p>Hallo liebe c++fan-gemeinde <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="😉"
    /> da ich im gegensatz zu euch noch ein ziemliche noob bin was c++ angeht habt ich da mal ne frage an euch</p>
<p>erstmal zu meinem system:<br />
WINXP, VS 2005 mit QT Trolltech(bei dieser func eig nicht relevant)</p>
<p>mein error:</p>
<pre><code>Dies kann auf eine Beschädigung des Heaps zurückzuführen sein und weist auf ein Problem in actions.exe oder in einer der geladenen DLLs hin.
</code></pre>
<p>die dateien:</p>
<p>main.cpp</p>
<pre><code>#include &quot;main.h&quot;
#include &quot;windowhandles.h&quot;
#include &quot;actions.h&quot;
int main(int argc, char *argv[])
{
winHandlerClass test;

test.findWindows();
}
</code></pre>
<p>windowhandles.h</p>
<pre><code>#include &lt;windows.h&gt;
#include &lt;string&gt;
using namespace std;

struct hwndStrLprect
{
	HWND hwnds[3];
	string titles[3];
	LPRECT coords[3];  /*  geeky: von LPRECT auf RECT */

};

class winHandlerClass
{
public:

	//sucht bei gegebenen fenster name(string) das jeweilige handle dazu
	void findWindows();

};
</code></pre>
<p>windowhandles.cpp</p>
<pre><code>#include &quot;windowhandles.h&quot;

BOOL CALLBACK MyEnumProc(HWND hWnd, LPARAM lParam)
{

	hwndStrLprect windowHandles;
	const int ANZAHLARRAYS = 3;

	windowHandles.titles[0] = &quot;NAME DES ERSTEN FENSTERS(tragt einfach mal nen fenster ein ;))&quot;;
	windowHandles.titles[1] = &quot;NAME DES ZWEITEN FENSTERS&quot;;
	windowHandles.titles[2] = &quot;blubb&quot;;

char title[500] = 
	{
		0
	};

	GetWindowTextA(hWnd, (LPSTR)title, GetWindowTextLength(hWnd) + 1);

	for (int a = 0; a &lt; ANZAHLARRAYS; a++)
	{
		if (strstr(title, windowHandles.titles[a].c_str()))
		{
			GetWindowRect(hWnd, windowHandles.coords[a]);
			windowHandles.hwnds[a] = hWnd;
			return false;
		}
	}
	return TRUE;
}

void winHandlerClass::findWindows(){

	EnumWindows(MyEnumProc, 0);

}
</code></pre>
<p>hab ehrlich gesagt gar kein plan woran das liegt, scheint ja eig alles in Ordnung zu sein(mehr oder weniger) <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
<p>wäre echt dankbar falls einer von euch mir einen ratschlag geben könnte</p>
<p>mfg</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/204571/gelöst-getwindowrect-heap-beschädigung-o_o</link><generator>RSS for Node</generator><lastBuildDate>Sun, 26 Apr 2026 19:22:04 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/204571.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 04 Feb 2008 23:49:45 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to [Gelöst] GetWindowRect Heap beschädigung o_O?? on Tue, 05 Feb 2008 11:33:47 GMT]]></title><description><![CDATA[<p>Hallo liebe c++fan-gemeinde <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="😉"
    /> da ich im gegensatz zu euch noch ein ziemliche noob bin was c++ angeht habt ich da mal ne frage an euch</p>
<p>erstmal zu meinem system:<br />
WINXP, VS 2005 mit QT Trolltech(bei dieser func eig nicht relevant)</p>
<p>mein error:</p>
<pre><code>Dies kann auf eine Beschädigung des Heaps zurückzuführen sein und weist auf ein Problem in actions.exe oder in einer der geladenen DLLs hin.
</code></pre>
<p>die dateien:</p>
<p>main.cpp</p>
<pre><code>#include &quot;main.h&quot;
#include &quot;windowhandles.h&quot;
#include &quot;actions.h&quot;
int main(int argc, char *argv[])
{
winHandlerClass test;

test.findWindows();
}
</code></pre>
<p>windowhandles.h</p>
<pre><code>#include &lt;windows.h&gt;
#include &lt;string&gt;
using namespace std;

struct hwndStrLprect
{
	HWND hwnds[3];
	string titles[3];
	LPRECT coords[3];  /*  geeky: von LPRECT auf RECT */

};

class winHandlerClass
{
public:

	//sucht bei gegebenen fenster name(string) das jeweilige handle dazu
	void findWindows();

};
</code></pre>
<p>windowhandles.cpp</p>
<pre><code>#include &quot;windowhandles.h&quot;

BOOL CALLBACK MyEnumProc(HWND hWnd, LPARAM lParam)
{

	hwndStrLprect windowHandles;
	const int ANZAHLARRAYS = 3;

	windowHandles.titles[0] = &quot;NAME DES ERSTEN FENSTERS(tragt einfach mal nen fenster ein ;))&quot;;
	windowHandles.titles[1] = &quot;NAME DES ZWEITEN FENSTERS&quot;;
	windowHandles.titles[2] = &quot;blubb&quot;;

char title[500] = 
	{
		0
	};

	GetWindowTextA(hWnd, (LPSTR)title, GetWindowTextLength(hWnd) + 1);

	for (int a = 0; a &lt; ANZAHLARRAYS; a++)
	{
		if (strstr(title, windowHandles.titles[a].c_str()))
		{
			GetWindowRect(hWnd, windowHandles.coords[a]);
			windowHandles.hwnds[a] = hWnd;
			return false;
		}
	}
	return TRUE;
}

void winHandlerClass::findWindows(){

	EnumWindows(MyEnumProc, 0);

}
</code></pre>
<p>hab ehrlich gesagt gar kein plan woran das liegt, scheint ja eig alles in Ordnung zu sein(mehr oder weniger) <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
<p>wäre echt dankbar falls einer von euch mir einen ratschlag geben könnte</p>
<p>mfg</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1449417</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1449417</guid><dc:creator><![CDATA[phazz]]></dc:creator><pubDate>Tue, 05 Feb 2008 11:33:47 GMT</pubDate></item><item><title><![CDATA[Reply to [Gelöst] GetWindowRect Heap beschädigung o_O?? on Tue, 05 Feb 2008 00:21:57 GMT]]></title><description><![CDATA[<p>LPRECT coords[3]; &lt;-- LP = &quot;Large Pointer&quot;<br />
Der Pointer zeigt allerdings weiss gott wo hin.<br />
GetWindowRect() erwartet aber das der Zeiger den er da bekommt auf gültigen Speicher zeigt.</p>
<p>Lass das LP weg und gib bei GetWindowRect() dann den Zeiger an.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1449432</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1449432</guid><dc:creator><![CDATA[geeky]]></dc:creator><pubDate>Tue, 05 Feb 2008 00:21:57 GMT</pubDate></item><item><title><![CDATA[Reply to [Gelöst] GetWindowRect Heap beschädigung o_O?? on Tue, 05 Feb 2008 11:29:18 GMT]]></title><description><![CDATA[<p>//edit:<br />
habe es so verändert wie du gesagt hast geeky</p>
<p>komischer error, tritt noch immer auf o_O</p>
<p>manchmal tritt er sogar nicht auf O_o</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1449588</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1449588</guid><dc:creator><![CDATA[phazz]]></dc:creator><pubDate>Tue, 05 Feb 2008 11:29:18 GMT</pubDate></item><item><title><![CDATA[Reply to [Gelöst] GetWindowRect Heap beschädigung o_O?? on Tue, 05 Feb 2008 11:15:33 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">struct hwndStrLprect 
{ 
    HWND hwnds[3]; 
    string titles[3]; 
    RECT coords[3];

};
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1449631</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1449631</guid><dc:creator><![CDATA[sri]]></dc:creator><pubDate>Tue, 05 Feb 2008 11:15:33 GMT</pubDate></item><item><title><![CDATA[Reply to [Gelöst] GetWindowRect Heap beschädigung o_O?? on Tue, 05 Feb 2008 11:35:01 GMT]]></title><description><![CDATA[<p>sri schrieb:</p>
<blockquote>
<pre><code class="language-cpp">struct hwndStrLprect 
{ 
    HWND hwnds[3]; 
    string titles[3]; 
    RECT coords[3];
    
};
</code></pre>
</blockquote>
<p>danke, danke euch beiden es funktioniert...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1449636</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1449636</guid><dc:creator><![CDATA[phazz]]></dc:creator><pubDate>Tue, 05 Feb 2008 11:35:01 GMT</pubDate></item></channel></rss>