<?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[FindWindow anwenden auf bestimmten Desktop]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich erzeuge mit CreateDesktop einen neuen Desktop.<br />
In diesem Desktop wird mit CreateProcessAsUser ein Programm (als Admin) gestartet.(Zuvor wird noch LogonUser ausgeführt)</p>
<p>Wie kann ich nun mit FindWindow in diesem neuen Desktop eine Fenster finden.<br />
Will damit an die Hwnd rankommen und an die gestartete Anwendung mit PostMessage paar Nachrichten schicken.</p>
<p>Es soll nicht zu diesem neuen Desktop geswitched werden!<br />
Der User soll vom zweiten Desktop nichts mitbekommen.</p>
<p>Ich habe vorher EnumDesktopWindows verwendet um an die Fenster ranzukommen.<br />
Seitdem ich aber die Applikation auf dem zweiten Desktop mit Admin-Rechten starte bekomm ich mit EnumDesktopWindows kein Hwnd.</p>
<p>Jetzt wollte ich es nun mit FindWindow probieren.</p>
<p>Hier mal paar Codeabschnitte:</p>
<pre><code class="language-cpp">hdesk = CreateDesktopW(desktop,NULL,NULL,DF_ALLOWOTHERACCOUNTHOOK,GENERIC_ALL,&amp;secDesk);

...

LogonUser(L&quot;Administrator&quot;,L&quot;.&quot;,L&quot;password&quot;,LOGON32_LOGON_INTERACTIVE,
		LOGON32_PROVIDER_DEFAULT,&amp;hToken)

...

CreateProcessAsUser(hToken,NULL,file,&amp;securProc,NULL,TRUE,0,NULL,dir,&amp;si,&amp;piProc)

....
</code></pre>
<p>Würde mich freuen wenn ihr mir etwas helefn könntet.<br />
Sitze schon seit tagen dran, bin kein Schritt voran gekommen.</p>
<p>Vielen Dank.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/172217/findwindow-anwenden-auf-bestimmten-desktop</link><generator>RSS for Node</generator><lastBuildDate>Mon, 13 Jul 2026 14:45:58 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/172217.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 02 Feb 2007 13:24:28 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to FindWindow anwenden auf bestimmten Desktop on Fri, 02 Feb 2007 13:24:28 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich erzeuge mit CreateDesktop einen neuen Desktop.<br />
In diesem Desktop wird mit CreateProcessAsUser ein Programm (als Admin) gestartet.(Zuvor wird noch LogonUser ausgeführt)</p>
<p>Wie kann ich nun mit FindWindow in diesem neuen Desktop eine Fenster finden.<br />
Will damit an die Hwnd rankommen und an die gestartete Anwendung mit PostMessage paar Nachrichten schicken.</p>
<p>Es soll nicht zu diesem neuen Desktop geswitched werden!<br />
Der User soll vom zweiten Desktop nichts mitbekommen.</p>
<p>Ich habe vorher EnumDesktopWindows verwendet um an die Fenster ranzukommen.<br />
Seitdem ich aber die Applikation auf dem zweiten Desktop mit Admin-Rechten starte bekomm ich mit EnumDesktopWindows kein Hwnd.</p>
<p>Jetzt wollte ich es nun mit FindWindow probieren.</p>
<p>Hier mal paar Codeabschnitte:</p>
<pre><code class="language-cpp">hdesk = CreateDesktopW(desktop,NULL,NULL,DF_ALLOWOTHERACCOUNTHOOK,GENERIC_ALL,&amp;secDesk);

...

LogonUser(L&quot;Administrator&quot;,L&quot;.&quot;,L&quot;password&quot;,LOGON32_LOGON_INTERACTIVE,
		LOGON32_PROVIDER_DEFAULT,&amp;hToken)

...

CreateProcessAsUser(hToken,NULL,file,&amp;securProc,NULL,TRUE,0,NULL,dir,&amp;si,&amp;piProc)

....
</code></pre>
<p>Würde mich freuen wenn ihr mir etwas helefn könntet.<br />
Sitze schon seit tagen dran, bin kein Schritt voran gekommen.</p>
<p>Vielen Dank.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1221742</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1221742</guid><dc:creator><![CDATA[ThaMubber]]></dc:creator><pubDate>Fri, 02 Feb 2007 13:24:28 GMT</pubDate></item><item><title><![CDATA[Reply to FindWindow anwenden auf bestimmten Desktop on Fri, 02 Feb 2007 13:34:37 GMT]]></title><description><![CDATA[<p>Fenster Handles sind an den Desktop gebunden. Das heißt von einem Desktop wirst du nicht an das Fensterhandle eines anderen Fenster kommen, wenn dieses auf einen anderen Desktop liegt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1221747</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1221747</guid><dc:creator><![CDATA[[[global:former_user]]]]></dc:creator><pubDate>Fri, 02 Feb 2007 13:34:37 GMT</pubDate></item><item><title><![CDATA[Reply to FindWindow anwenden auf bestimmten Desktop on Fri, 02 Feb 2007 13:49:39 GMT]]></title><description><![CDATA[<p>wieso geht das denn mit EnumDesktopWindows ?</p>
<p>Der findet doch die windows eines bestimmten Desktops.</p>
<p>Edit:</p>
<p>Hier noch der Code für EnumDesktopWindows</p>
<pre><code class="language-cpp">EnumDesktopWindows(hdesk,EnumWindowsProc,(LPARAM) &amp;wi);
</code></pre>
<pre><code class="language-cpp">BOOL CALLBACK MyProg::EnumWindowsProc(HWND hwnd, LPARAM lParam)
{
  WNDINFO*    pWndInfo = (WNDINFO*)(lParam);
  DWORD       dwProcessID;

  ::GetWindowThreadProcessId(hwnd, &amp;dwProcessID);

  if (dwProcessID == pWndInfo-&gt;dwProcessID)
  {
    pWndInfo-&gt;hWnd = hwnd;
    return false;
  }
  return true;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1221751</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1221751</guid><dc:creator><![CDATA[ThaMubber]]></dc:creator><pubDate>Fri, 02 Feb 2007 13:49:39 GMT</pubDate></item><item><title><![CDATA[Reply to FindWindow anwenden auf bestimmten Desktop on Sun, 04 Feb 2007 21:45:29 GMT]]></title><description><![CDATA[<p>Na dann sag mir mal, wo du bei FindWindow das Desktophandle angeben willst? FindWindow kan eben nur Fenster finden, die sih auf dem gleichen Deskop befinden, wie der aufrufende Thread.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1222980</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1222980</guid><dc:creator><![CDATA[[[global:former_user]]]]></dc:creator><pubDate>Sun, 04 Feb 2007 21:45:29 GMT</pubDate></item><item><title><![CDATA[Reply to FindWindow anwenden auf bestimmten Desktop on Mon, 05 Feb 2007 00:09:17 GMT]]></title><description><![CDATA[<p>ich red ja auch von EnumDesktopWindows + die CallBack Funktion.</p>
<p>Da klappt es.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1223024</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1223024</guid><dc:creator><![CDATA[ThaMubber]]></dc:creator><pubDate>Mon, 05 Feb 2007 00:09:17 GMT</pubDate></item></channel></rss>