<?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[Merwürdiges Problem mit handle]]></title><description><![CDATA[<p>Hi leutz!</p>
<p>Wie der Titel schon sagt, habe ich ein Problem an ein handle zu kommen.<br />
Hier ein bisschen Code von meiner CProcess Klasse:</p>
<p>CProcess.H</p>
<pre><code class="language-cpp">class CProcess
{
public:
void SetProcessData(LPCTSTR ProzessKlassenName, LPCTSTR ProzessFensterName);

private:
HWND GetHwnd(LPCTSTR lpClassName, LPCTSTR lpWindowName);
DWORD GetPID(HWND hWnd);
HANDLE GetHANDLE();

HWND hWnd;
DWORD PID;
HANDLE hProc;
};
</code></pre>
<p>CProcess.cpp</p>
<pre><code class="language-cpp">void CProcess::SetProcessData(LPCTSTR ProzessKlassenName, LPCTSTR ProzessFensterName)
{
	hWnd  = GetHwnd(ProzessKlassenName, ProzessFensterName);
	PID   = GetPID(hWnd);
	hProc = GetHANDLE();
}

HWND CProcess::GetHwnd(LPCTSTR lpClassName, LPCTSTR lpWindowName)
{
	return FindWindow(lpClassName, lpWindowName);
}

DWORD CProcess::GetPID(HWND hWnd)
{
     DWORD Temp;
     GetWindowThreadProcessId(hWnd, &amp;Temp);
     return Temp;
}

HANDLE CProcess::GetHANDLE()
{
     return OpenProcess(PROCESS_ALL_ACCESS, FALSE, PID);
}
</code></pre>
<p>In der Funktion GetHANDLE bekomme ich aber kein richtiges Handle zurück!<br />
Ich bekommt zwar eins, aber es scheint ungültig zu sein, das es auch beim Neustarten der Zielanwendung immer gleich ist.<br />
Ich bekomme nichtmal eine fehlermeldung, außer wenn ich mit WriteProcessMemory darauf zugreifen will, weil das handle ja anscheind ungültig ist.</p>
<p>Ich kann mir einfach nicht erklären, was ich falsch gemacht habe.<br />
Wisst ihr einen rat? Danke im Vorraus</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/55375/merwürdiges-problem-mit-handle</link><generator>RSS for Node</generator><lastBuildDate>Tue, 02 Jun 2026 00:23:52 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/55375.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 16 Nov 2003 11:23:33 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Merwürdiges Problem mit handle on Sun, 16 Nov 2003 11:23:33 GMT]]></title><description><![CDATA[<p>Hi leutz!</p>
<p>Wie der Titel schon sagt, habe ich ein Problem an ein handle zu kommen.<br />
Hier ein bisschen Code von meiner CProcess Klasse:</p>
<p>CProcess.H</p>
<pre><code class="language-cpp">class CProcess
{
public:
void SetProcessData(LPCTSTR ProzessKlassenName, LPCTSTR ProzessFensterName);

private:
HWND GetHwnd(LPCTSTR lpClassName, LPCTSTR lpWindowName);
DWORD GetPID(HWND hWnd);
HANDLE GetHANDLE();

HWND hWnd;
DWORD PID;
HANDLE hProc;
};
</code></pre>
<p>CProcess.cpp</p>
<pre><code class="language-cpp">void CProcess::SetProcessData(LPCTSTR ProzessKlassenName, LPCTSTR ProzessFensterName)
{
	hWnd  = GetHwnd(ProzessKlassenName, ProzessFensterName);
	PID   = GetPID(hWnd);
	hProc = GetHANDLE();
}

HWND CProcess::GetHwnd(LPCTSTR lpClassName, LPCTSTR lpWindowName)
{
	return FindWindow(lpClassName, lpWindowName);
}

DWORD CProcess::GetPID(HWND hWnd)
{
     DWORD Temp;
     GetWindowThreadProcessId(hWnd, &amp;Temp);
     return Temp;
}

HANDLE CProcess::GetHANDLE()
{
     return OpenProcess(PROCESS_ALL_ACCESS, FALSE, PID);
}
</code></pre>
<p>In der Funktion GetHANDLE bekomme ich aber kein richtiges Handle zurück!<br />
Ich bekommt zwar eins, aber es scheint ungültig zu sein, das es auch beim Neustarten der Zielanwendung immer gleich ist.<br />
Ich bekomme nichtmal eine fehlermeldung, außer wenn ich mit WriteProcessMemory darauf zugreifen will, weil das handle ja anscheind ungültig ist.</p>
<p>Ich kann mir einfach nicht erklären, was ich falsch gemacht habe.<br />
Wisst ihr einen rat? Danke im Vorraus</p>
]]></description><link>https://www.c-plusplus.net/forum/post/395098</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/395098</guid><dc:creator><![CDATA[Perner]]></dc:creator><pubDate>Sun, 16 Nov 2003 11:23:33 GMT</pubDate></item><item><title><![CDATA[Reply to Merwürdiges Problem mit handle on Sun, 16 Nov 2003 12:08:10 GMT]]></title><description><![CDATA[<p>a) der handle-WEert ist nicht zufällig INVALID_HANDLE_VALUE (== -1)?<br />
b) GetLastError() nach GetHandle() ?<br />
c) GetlastError() nach writeprocessmemory?<br />
d) Hast du genügend rechte, um den prozeß mit allen rechten zu öffnen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/395126</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/395126</guid><dc:creator><![CDATA[peterchen]]></dc:creator><pubDate>Sun, 16 Nov 2003 12:08:10 GMT</pubDate></item><item><title><![CDATA[Reply to Merwürdiges Problem mit handle on Sun, 16 Nov 2003 12:19:48 GMT]]></title><description><![CDATA[<p>- Der Handlewert ist jedesmal 0x000007b0.<br />
- GetLastError nach handle ergab 0.<br />
- GetLastError nach WriteProcessMemory ergab 229<br />
&quot;Nur ein Teil der ReadProcessMemory- oder WriteProcessMemory-Anforderung<br />
wurde abgeschlossen.&quot; (Die meldung wird wahrscheinlich wegen des<br />
ungültigen handles kommen.)<br />
- Ich habe Windows XP und keinerlei Rechte eingeschränkt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/395132</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/395132</guid><dc:creator><![CDATA[Perner]]></dc:creator><pubDate>Sun, 16 Nov 2003 12:19:48 GMT</pubDate></item><item><title><![CDATA[Reply to Merwürdiges Problem mit handle on Sun, 16 Nov 2003 14:34:10 GMT]]></title><description><![CDATA[<p>Das Handle sieht gut aus (sonst würdest du auch einen anderen Fehler bekommen). Windows recyclethandle-Werte, ist also nicht verwunderlich.</p>
<p>Ist der Zielspeicher schreibbar? (kannst du mit VirtualQueryEx rausfinden)</p>
<p>Gib mal bei WriteprocessMemory den &quot;lpNumberOfBytesWritten&quot; an - was kommt da zurück?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/395229</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/395229</guid><dc:creator><![CDATA[peterchen]]></dc:creator><pubDate>Sun, 16 Nov 2003 14:34:10 GMT</pubDate></item><item><title><![CDATA[Reply to Merwürdiges Problem mit handle on Sun, 16 Nov 2003 15:04:52 GMT]]></title><description><![CDATA[<p>gar nix, er scheint die funktion abzubrechen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/395251</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/395251</guid><dc:creator><![CDATA[Perner]]></dc:creator><pubDate>Sun, 16 Nov 2003 15:04:52 GMT</pubDate></item></channel></rss>