<?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[größe einer applikation ändern]]></title><description><![CDATA[<p>hallo!</p>
<p>habe da ein problem. ich muss eine anwendung z.b. acrobat und eine zugehöriges pdf öffnen. das funktioniert ja schon, jedoch möchte ich nun auch beim öffnen schon die größe der anwendung bestimmen. die anwendung wird von einem konsolenprogramm aufgrerufen, welche nur die anwendung öffnet und die größe sowie die position der anwendeung bestimmt.<br />
leider funktioniert zwar der aufruf, jedoch nicht die grössenvorgabe.<br />
bitte um hilfe!</p>
<p>--- Code ---<br />
char cmd_line[256];<br />
char * applikation = argv1;<br />
char * dateiname = argv2;</p>
<p>sprintf(cmd_line, &quot;\&quot;%s\&quot;\&quot;%s\&quot;&quot;, applikation, dateiname);</p>
<p>memset(&amp;stgStartupInfo, sizeof(STARTUPINFO), 0);<br />
stgStartupInfo.cb = sizeof(STARTUPINFO);<br />
stgStartupInfo.lpReserved = NULL;<br />
stgStartupInfo.lpDesktop = NULL;<br />
stgStartupInfo.lpTitle = NULL;<br />
stgStartupInfo.dwX = 500;<br />
stgStartupInfo.dwY = 500;<br />
stgStartupInfo.dwXSize = 500;<br />
stgStartupInfo.dwYSize = 500;<br />
stgStartupInfo.dwFlags = STARTF_USESHOWWINDOW;<br />
stgStartupInfo.dwFlags = STARTF_USEPOSITION;<br />
stgStartupInfo.dwFlags = STARTF_USESIZE;</p>
<p>CreateProcess(<br />
applikation,<br />
cmd_line,<br />
NULL,<br />
NULL,<br />
false,<br />
CREATE_DEFAULT_ERROR_MODE,<br />
NULL,<br />
NULL,<br />
&amp;stgStartupInfo,<br />
&amp;stgProcessInfo<br />
);<br />
-----</p>
<p>danke für die hilfe!</p>
<p>atnt</p>
<p><img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/topic/71621/größe-einer-applikation-ändern</link><generator>RSS for Node</generator><lastBuildDate>Tue, 28 Apr 2026 14:13:09 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/71621.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 20 Apr 2004 11:49:12 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to größe einer applikation ändern on Tue, 20 Apr 2004 11:49:12 GMT]]></title><description><![CDATA[<p>hallo!</p>
<p>habe da ein problem. ich muss eine anwendung z.b. acrobat und eine zugehöriges pdf öffnen. das funktioniert ja schon, jedoch möchte ich nun auch beim öffnen schon die größe der anwendung bestimmen. die anwendung wird von einem konsolenprogramm aufgrerufen, welche nur die anwendung öffnet und die größe sowie die position der anwendeung bestimmt.<br />
leider funktioniert zwar der aufruf, jedoch nicht die grössenvorgabe.<br />
bitte um hilfe!</p>
<p>--- Code ---<br />
char cmd_line[256];<br />
char * applikation = argv1;<br />
char * dateiname = argv2;</p>
<p>sprintf(cmd_line, &quot;\&quot;%s\&quot;\&quot;%s\&quot;&quot;, applikation, dateiname);</p>
<p>memset(&amp;stgStartupInfo, sizeof(STARTUPINFO), 0);<br />
stgStartupInfo.cb = sizeof(STARTUPINFO);<br />
stgStartupInfo.lpReserved = NULL;<br />
stgStartupInfo.lpDesktop = NULL;<br />
stgStartupInfo.lpTitle = NULL;<br />
stgStartupInfo.dwX = 500;<br />
stgStartupInfo.dwY = 500;<br />
stgStartupInfo.dwXSize = 500;<br />
stgStartupInfo.dwYSize = 500;<br />
stgStartupInfo.dwFlags = STARTF_USESHOWWINDOW;<br />
stgStartupInfo.dwFlags = STARTF_USEPOSITION;<br />
stgStartupInfo.dwFlags = STARTF_USESIZE;</p>
<p>CreateProcess(<br />
applikation,<br />
cmd_line,<br />
NULL,<br />
NULL,<br />
false,<br />
CREATE_DEFAULT_ERROR_MODE,<br />
NULL,<br />
NULL,<br />
&amp;stgStartupInfo,<br />
&amp;stgProcessInfo<br />
);<br />
-----</p>
<p>danke für die hilfe!</p>
<p>atnt</p>
<p><img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/505131</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/505131</guid><dc:creator><![CDATA[atnt]]></dc:creator><pubDate>Tue, 20 Apr 2004 11:49:12 GMT</pubDate></item><item><title><![CDATA[Reply to größe einer applikation ändern on Tue, 20 Apr 2004 12:06:23 GMT]]></title><description><![CDATA[<p>Hm,<br />
es liegt natürlich immer an der Anwendung selber, ob sie die empfohlene Größe ihres Fensters auch selber beachtet (was die meisten Anwendungen natürlich machen).<br />
Du hättest die Möglichkeit die Position des Fensters nachträglich mit<br />
SetWindowPos zu beeinflussen.</p>
<p>Grüße Rapha</p>
]]></description><link>https://www.c-plusplus.net/forum/post/505151</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/505151</guid><dc:creator><![CDATA[Rapha]]></dc:creator><pubDate>Tue, 20 Apr 2004 12:06:23 GMT</pubDate></item><item><title><![CDATA[Reply to größe einer applikation ändern on Tue, 20 Apr 2004 12:20:24 GMT]]></title><description><![CDATA[<p>danke für die info!<br />
bin leider ein c++ einsteiger und habe da jetzt das problem, wie erhalte ich einen typ vom objekt CWnd von meiner anwendung.<br />
für einen beispielcode wäre ich sehr dankbar!</p>
<p>danke!</p>
<p>atnt</p>
]]></description><link>https://www.c-plusplus.net/forum/post/505167</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/505167</guid><dc:creator><![CDATA[atnt]]></dc:creator><pubDate>Tue, 20 Apr 2004 12:20:24 GMT</pubDate></item><item><title><![CDATA[Reply to größe einer applikation ändern on Tue, 20 Apr 2004 12:33:34 GMT]]></title><description><![CDATA[<p>Hm,</p>
<p>also,</p>
<p>als erstes brauchst du ein Handle auf das Fenster, von dem du die Größe ändern willst (was am schwierigsten ist). Dieses Handle bekommst du mit FindWindow:</p>
<pre><code class="language-cpp">HWND FindWindow(
    LPCTSTR lpClassName,
    LPCTSTR lpWindowName
);
</code></pre>
<p>FindWindow in der MSDN: <a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winui/winui/windowsuserinterface/windowing/windows/windowreference/windowfunctions/findwindow.asp" rel="nofollow">http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winui/winui/windowsuserinterface/windowing/windows/windowreference/windowfunctions/findwindow.asp</a><br />
Mit Visual C++ wird normalerweise ein Tool mitgeliefert, mit dem man ganz einfach den Klassennamen und den Titel eines Fensters herausbekommen kann: Spy++.<br />
Angenommen du brauchst ein Handle auf den Windows Rechner (dir ist der Klassenname unbekannt, aber du kennst den Titel des Fensters [&quot;Rechner&quot;]):</p>
<pre><code class="language-cpp">HWND hRechner = FindWindow( NULL /* Klassenname unbekannt */, &quot;Rechner&quot;);
if (hRechner != NULL)
{
   // der Windows-rechner ist gestartet, wir haben jetzt das HANDLE
}
</code></pre>
<p>Schwieriger wird es, wenn du das Handle eines Programmes willst, bei dem der Fenstertitel immer je nach dem geöffneten Dokument variiert (z.B. IE: &quot;C/C++ Forum :: Antwort schreiben - Microsoft Internet Explorer).<br />
Hier musst du jedes geöffnetes Fenster durchgehen und in dem Titel des Fensters nach einer Zeichenfolge, die das Fenster eindeutig identifiziert (in meinem Beispiel &quot;Microsoft Internet Explorer&quot;) suchen.<br />
Hierfür gibt es die Funktion EnumWindows:<br />
<a href="http://msdn.microsoft.com/library/en-us/winui/winui/windowsuserinterface/windowing/windows/windowreference/windowfunctions/enumwindows.asp" rel="nofollow">http://msdn.microsoft.com/library/en-us/winui/winui/windowsuserinterface/windowing/windows/windowreference/windowfunctions/enumwindows.asp</a></p>
<p>Wenn du das Handle hast, kannst du ganz einfach mit SetWindowPos die Position des Fensters ändern:<br />
<a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winui/WinUI/WindowsUserInterface/Windowing/Windows/WindowReference/WindowFunctions/SetWindowPos.asp" rel="nofollow">http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winui/WinUI/WindowsUserInterface/Windowing/Windows/WindowReference/WindowFunctions/SetWindowPos.asp</a></p>
<pre><code class="language-cpp">HWND hHandle;
/* Handlefindecode :) hier */
SetWindowPos(hHandle, NULL, 0, 0, 200, 180, SWP_NOOWNERZORDER | SWP_NOZORDER);
</code></pre>
<p>Grüße Rapha</p>
]]></description><link>https://www.c-plusplus.net/forum/post/505186</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/505186</guid><dc:creator><![CDATA[Rapha]]></dc:creator><pubDate>Tue, 20 Apr 2004 12:33:34 GMT</pubDate></item><item><title><![CDATA[Reply to größe einer applikation ändern on Tue, 20 Apr 2004 12:54:49 GMT]]></title><description><![CDATA[<p>danke!</p>
<p>habe es ausprobiert, der name ist mir normalerweise bekannt z.b. &quot;&quot;Microsoft Excel - 4711&quot; wie in meinem beispiel. den namen habe ich auch in spy++ gefunden.<br />
jedoch habe ich da sicher noch einen fehler gemacht, da der compiler einen fehler meldet.</p>
<p>--- code<br />
HWND hWindow = FindWindow( NULL, &quot;Microsoft Excel - 4711&quot; );</p>
<p>CWnd test;<br />
test.SetWindowPos(<br />
hWindow,<br />
0, 0, 400, 500,<br />
SWP_NOOWNERZORDER | SWP_NOZORDER<br />
);</p>
<p>--- fehlermeldung<br />
'SetWindowPos' : Konvertierung des Parameters 1 von 'struct HWND__ *' in 'const class CWnd *' nicht moeglich</p>
<p>-------------</p>
<p>würdest du bitte noch einen blick auf den code werfen?</p>
<p>danke für deine info!</p>
<p>gruss<br />
atnt</p>
]]></description><link>https://www.c-plusplus.net/forum/post/505210</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/505210</guid><dc:creator><![CDATA[atnt]]></dc:creator><pubDate>Tue, 20 Apr 2004 12:54:49 GMT</pubDate></item><item><title><![CDATA[Reply to größe einer applikation ändern on Tue, 20 Apr 2004 12:58:58 GMT]]></title><description><![CDATA[<p>sorry,<br />
habe zu früh um hilfe gerufen. habe den fehler gefunden, funktioniert nun.<br />
hast du auch eine idee, wie ich die anwendung wieder schliessen kann.</p>
<p>danke<br />
atnt</p>
]]></description><link>https://www.c-plusplus.net/forum/post/505215</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/505215</guid><dc:creator><![CDATA[atnt]]></dc:creator><pubDate>Tue, 20 Apr 2004 12:58:58 GMT</pubDate></item><item><title><![CDATA[Reply to größe einer applikation ändern on Tue, 20 Apr 2004 14:10:15 GMT]]></title><description><![CDATA[<p>Schick ne WM_QUIT Nachricht mit SendMessage/PostMessage an das Fenster:<br />
<a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winui/winui/windowsuserinterface/windowing/messagesandmessagequeues/messagesandmessagequeuesreference/messagesandmessagequeuesfunctions/sendmessage.asp" rel="nofollow">http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winui/winui/windowsuserinterface/windowing/messagesandmessagequeues/messagesandmessagequeuesreference/messagesandmessagequeuesfunctions/sendmessage.asp</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/505314</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/505314</guid><dc:creator><![CDATA[Rapha]]></dc:creator><pubDate>Tue, 20 Apr 2004 14:10:15 GMT</pubDate></item><item><title><![CDATA[Reply to größe einer applikation ändern on Wed, 21 Apr 2004 12:17:13 GMT]]></title><description><![CDATA[<p>sorry für die späte antwort!<br />
danke für deine info, sie hat mir sehr weitergeholfen. jetzt gibt es nur noch ein problem mit dem schliessen. hast du möglicherweise die zeit um mir ein kleines beispiel w.o. um es für mich besser verständlich zu machen, da mir die microsoft hilfe nicht wirklich klar ist.</p>
<p>danke für deine info</p>
<p>gruss<br />
atnt</p>
]]></description><link>https://www.c-plusplus.net/forum/post/506021</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/506021</guid><dc:creator><![CDATA[atnt]]></dc:creator><pubDate>Wed, 21 Apr 2004 12:17:13 GMT</pubDate></item><item><title><![CDATA[Reply to größe einer applikation ändern on Wed, 21 Apr 2004 12:25:36 GMT]]></title><description><![CDATA[<p>Hi,</p>
<p>du hast ja das Handle (HWND) auf das Fenster, richtig?<br />
versuche dann einfach folgendes (angenommen hWnd ist das Handle auf das Fenster):</p>
<pre><code class="language-cpp">SendMessage(hWnd, WM_QUIT, NULL, NULL);
</code></pre>
<p>Wenn das nicht funktioniert, versuche es mit PostMessage (beim InternetExplorer z.b. brauchst du PostMessage):</p>
<pre><code class="language-cpp">PostMessage(hWnd, WM_QUIT, NULL, NULL);
</code></pre>
<p>Grüße Rapha</p>
]]></description><link>https://www.c-plusplus.net/forum/post/506029</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/506029</guid><dc:creator><![CDATA[Rapha]]></dc:creator><pubDate>Wed, 21 Apr 2004 12:25:36 GMT</pubDate></item><item><title><![CDATA[Reply to größe einer applikation ändern on Wed, 21 Apr 2004 12:56:50 GMT]]></title><description><![CDATA[<p>hallo,<br />
fuktioniert leider nicht. anbei meinen code, das fenster wird schon gefunden (bildschimrausgabe gefunden), jedoch wird das fenster nicht geschlossen.</p>
<p>--- code<br />
while(gefunden == false)<br />
{<br />
HWND hWindow = FindWindow( NULL, applikationName );<br />
//SendMessage( hWindow, WM_QUIT, NULL, NULL);<br />
if ( PostMessage( hWindow, WM_QUIT, NULL, NULL) != NULL );<br />
{<br />
gefunden = true;<br />
cout &lt;&lt; &quot;gefunden&quot; &lt;&lt; endl;<br />
}<br />
}<br />
------</p>
<p>gruss<br />
atnt</p>
]]></description><link>https://www.c-plusplus.net/forum/post/506068</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/506068</guid><dc:creator><![CDATA[atnt]]></dc:creator><pubDate>Wed, 21 Apr 2004 12:56:50 GMT</pubDate></item><item><title><![CDATA[Reply to größe einer applikation ändern on Wed, 21 Apr 2004 13:16:39 GMT]]></title><description><![CDATA[<p>Folgender Code schließt bei mir Excel (2002) erfolgreicht:</p>
<pre><code class="language-cpp">#include &lt;iostream.h&gt;
#include &lt;windows.h&gt;

char title[] = &quot;Microsoft Excel - Neu Microsoft Excel-Arbeitsblatt.xls&quot;;
int main(int argc, char *argv[])
{
    HWND hWnd = FindWindow(NULL, title);
    if(hWnd)
    {
        cout &lt;&lt; &quot;Fenster gefunden&quot; &lt;&lt; endl;
        cout &lt;&lt; &quot;Fenster schließen&quot; &lt;&lt; endl;
        PostMessage(hWnd, WM_QUIT, NULL, NULL);
    }
    else cout &lt;&lt; &quot;Fenster nicht gefunden&quot;&lt;&lt;endl;
    system(&quot;PAUSE&quot;);
    return 0;
}
</code></pre>
<p>Grüße Rapha</p>
]]></description><link>https://www.c-plusplus.net/forum/post/506087</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/506087</guid><dc:creator><![CDATA[Rapha]]></dc:creator><pubDate>Wed, 21 Apr 2004 13:16:39 GMT</pubDate></item><item><title><![CDATA[Reply to größe einer applikation ändern on Thu, 22 Apr 2004 10:11:23 GMT]]></title><description><![CDATA[<p>hallo!</p>
<p>funktioniert nun auch bei mir, hatte einen fehler im programm. einen schönheitsfehler gibt es jedoch noch. sollte ich im excel etwas geändert haben, wird excel auch ohne &quot;änderungen speichern - blablabla&quot; geschlossen.<br />
hast du noch eine idee, wie man dieses problem löst.</p>
<p>danke für die info!<br />
atnt</p>
]]></description><link>https://www.c-plusplus.net/forum/post/506652</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/506652</guid><dc:creator><![CDATA[atnt]]></dc:creator><pubDate>Thu, 22 Apr 2004 10:11:23 GMT</pubDate></item></channel></rss>