<?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[WM_ACTIVATE-&amp;gt;lParam ist immer 0]]></title><description><![CDATA[<p>also, ich filtere mittels eines hooks die WM_ACTIVATE raus:</p>
<pre><code class="language-cpp">LRESULT CALLBACK windowProc(int nCode,WPARAM wParam,LPARAM lParam){
	if(nCode==HC_ACTION){
		CWPRETSTRUCT* message=(CWPRETSTRUCT*)lParam;
		if(message-&gt;message==WM_ACTIVATE)
			PostMessage(window,WM_USER+1,message-&gt;wParam,message-&gt;lParam);
	}
	return CallNextHookEx (hook, nCode, wParam, lParam); 
}
</code></pre>
<p>die nachricht landet dann hier im callback meines fensters:</p>
<pre><code class="language-cpp">case WM_USER+1:
{
    if(LOWORD(wParam)==WA_CLICKACTIVE)
        std::cout&lt;&lt;lParam&lt;&lt;&quot; &quot;;
    return 0;
}
break;
</code></pre>
<p>ausgabe: 0 immer. in die doku geschaut, und da gesehen, dass der lParam auch 0 sein kann,aber es stand nicht da, wann er 0 ist, und wann nicht. Muss man das irgendwo einstellen? wenn ja, wie? Oder muss man sich dann den HWND des fensters mithilfe anderer funktionen holen(GetForegroundWindow)? Nicht, dass es ein beinbruch wär, aber stören tuts schon irgendwie, und ich frag nur so der interesse halber <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>Was mich aber auch wundert ist, wieso ich bei jedem fenster das ich in den fordergrund hole eine nachricht erhalte, ausser bei Ordnerfenstern, die geben aus irgendeinem kurriosem grund 2 nachrichten zurück.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/94409/wm_activate-gt-lparam-ist-immer-0</link><generator>RSS for Node</generator><lastBuildDate>Sun, 26 Apr 2026 00:57:11 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/94409.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 08 Dec 2004 19:08:26 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to WM_ACTIVATE-&amp;gt;lParam ist immer 0 on Wed, 08 Dec 2004 19:08:26 GMT]]></title><description><![CDATA[<p>also, ich filtere mittels eines hooks die WM_ACTIVATE raus:</p>
<pre><code class="language-cpp">LRESULT CALLBACK windowProc(int nCode,WPARAM wParam,LPARAM lParam){
	if(nCode==HC_ACTION){
		CWPRETSTRUCT* message=(CWPRETSTRUCT*)lParam;
		if(message-&gt;message==WM_ACTIVATE)
			PostMessage(window,WM_USER+1,message-&gt;wParam,message-&gt;lParam);
	}
	return CallNextHookEx (hook, nCode, wParam, lParam); 
}
</code></pre>
<p>die nachricht landet dann hier im callback meines fensters:</p>
<pre><code class="language-cpp">case WM_USER+1:
{
    if(LOWORD(wParam)==WA_CLICKACTIVE)
        std::cout&lt;&lt;lParam&lt;&lt;&quot; &quot;;
    return 0;
}
break;
</code></pre>
<p>ausgabe: 0 immer. in die doku geschaut, und da gesehen, dass der lParam auch 0 sein kann,aber es stand nicht da, wann er 0 ist, und wann nicht. Muss man das irgendwo einstellen? wenn ja, wie? Oder muss man sich dann den HWND des fensters mithilfe anderer funktionen holen(GetForegroundWindow)? Nicht, dass es ein beinbruch wär, aber stören tuts schon irgendwie, und ich frag nur so der interesse halber <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>Was mich aber auch wundert ist, wieso ich bei jedem fenster das ich in den fordergrund hole eine nachricht erhalte, ausser bei Ordnerfenstern, die geben aus irgendeinem kurriosem grund 2 nachrichten zurück.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/669046</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/669046</guid><dc:creator><![CDATA[otze]]></dc:creator><pubDate>Wed, 08 Dec 2004 19:08:26 GMT</pubDate></item><item><title><![CDATA[Reply to WM_ACTIVATE-&amp;gt;lParam ist immer 0 on Wed, 08 Dec 2004 20:16:04 GMT]]></title><description><![CDATA[<p>Steht denn direkt in windowProc noch was in message-&gt;lParam?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/669107</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/669107</guid><dc:creator><![CDATA[flenders]]></dc:creator><pubDate>Wed, 08 Dec 2004 20:16:04 GMT</pubDate></item><item><title><![CDATA[Reply to WM_ACTIVATE-&amp;gt;lParam ist immer 0 on Wed, 08 Dec 2004 21:05:17 GMT]]></title><description><![CDATA[<p>ja, stimmt. am anfang sind die werte noch in ordnung, hinterher werden sie aber auch schon in der dll alle 0.</p>
<p>ich weis aber auch nicht, ob meine ausgabe via messagebox das ganze nicht verzerrt hat, console ging ja verständlicherweise nicht, und in eine datei konnt ich irgendwie auch nicht über ostream schreiben.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/669156</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/669156</guid><dc:creator><![CDATA[otze]]></dc:creator><pubDate>Wed, 08 Dec 2004 21:05:17 GMT</pubDate></item><item><title><![CDATA[Reply to WM_ACTIVATE-&amp;gt;lParam ist immer 0 on Wed, 08 Dec 2004 22:19:09 GMT]]></title><description><![CDATA[<p>Du könntest auch mit dem Debugger nachschauen. Ich könnte mir aber vorstellen, dass es daran liegt, dass du, wenn du die Nachricht mit PostMessage an deine exe weiterleitest evtl. in einen anderen Adressraum kommst und somit der Ponter ungültig wird (die DLL befindet sich ja auch in den Adressräumen von Fremdprozessen - deswegen ja überhaupt in einer DLL <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /> )</p>
<p>Ich hoffe mal, dass das jezt nicht völliger Mist war <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/669204</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/669204</guid><dc:creator><![CDATA[flenders]]></dc:creator><pubDate>Wed, 08 Dec 2004 22:19:09 GMT</pubDate></item><item><title><![CDATA[Reply to WM_ACTIVATE-&amp;gt;lParam ist immer 0 on Thu, 09 Dec 2004 13:20:44 GMT]]></title><description><![CDATA[<p>wenn ich einen long wert der ein HWND repräsentiert kopiere(dh den inhalt des CWPRETSTRUCT objekts kopiere), so wird der Wert beim kopieren sicher nicht 0 <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /></p>
<p>btw: die aktionen einer dll die sich in zich prozessen befindet mithilfe eines debuggers zu verfolgen stell ich mir irgendwie ziemlich krass vor <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>
]]></description><link>https://www.c-plusplus.net/forum/post/669506</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/669506</guid><dc:creator><![CDATA[otze]]></dc:creator><pubDate>Thu, 09 Dec 2004 13:20:44 GMT</pubDate></item></channel></rss>