<?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[System Context menu]]></title><description><![CDATA[<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="😕"
    /><br />
Hallo,</p>
<p>ich möchte mehrere Dateien markieren und dann über einen System Kontext Menü Eintrag in mein Programm laden. Was muß ich in der Regestry eintragen, damit das funktioniert?</p>
<p>Erzeuge ich folgendes in der Registry:<br />
HKEY_CLASSES_ROOT\<em>\shell\MeinProgramm\<br />
@=&quot;Mein Programm öffnen&quot;<br />
HKEY_CLASSES_ROOT\</em>\shell\MeinProgramm\command\<br />
@=&quot;C:\MeinProgramm.exe&quot;</p>
<p>Markiere ich dann einige Dateien, und klicke im System Kontext Menü auf den von mir neu erzeugten Entrag &quot;Mein Programm öffnen&quot;, dann startet mein Programm genauso oft, wie ich vorher Dateien markiert habe.</p>
<p>Was ich aber eigentlich möchte ist, daß die markierten Dateien alle in ein und demselben Task eines Programmes geöffnet werden.</p>
<p>Ich hoffe ich habe mich nicht zu unverständlich ausgedrückt.</p>
<p>Vielen Dank schon mal.</p>
<p>Gruß ube</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/44527/system-context-menu</link><generator>RSS for Node</generator><lastBuildDate>Tue, 28 Apr 2026 10:56:44 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/44527.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 31 Jul 2003 20:05:00 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to System Context menu on Thu, 31 Jul 2003 20:05:00 GMT]]></title><description><![CDATA[<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="😕"
    /><br />
Hallo,</p>
<p>ich möchte mehrere Dateien markieren und dann über einen System Kontext Menü Eintrag in mein Programm laden. Was muß ich in der Regestry eintragen, damit das funktioniert?</p>
<p>Erzeuge ich folgendes in der Registry:<br />
HKEY_CLASSES_ROOT\<em>\shell\MeinProgramm\<br />
@=&quot;Mein Programm öffnen&quot;<br />
HKEY_CLASSES_ROOT\</em>\shell\MeinProgramm\command\<br />
@=&quot;C:\MeinProgramm.exe&quot;</p>
<p>Markiere ich dann einige Dateien, und klicke im System Kontext Menü auf den von mir neu erzeugten Entrag &quot;Mein Programm öffnen&quot;, dann startet mein Programm genauso oft, wie ich vorher Dateien markiert habe.</p>
<p>Was ich aber eigentlich möchte ist, daß die markierten Dateien alle in ein und demselben Task eines Programmes geöffnet werden.</p>
<p>Ich hoffe ich habe mich nicht zu unverständlich ausgedrückt.</p>
<p>Vielen Dank schon mal.</p>
<p>Gruß ube</p>
]]></description><link>https://www.c-plusplus.net/forum/post/322128</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/322128</guid><dc:creator><![CDATA[ub_e]]></dc:creator><pubDate>Thu, 31 Jul 2003 20:05:00 GMT</pubDate></item><item><title><![CDATA[Reply to System Context menu on Thu, 31 Jul 2003 21:04:04 GMT]]></title><description><![CDATA[<p>Der Thread <a href="http://c-plusplus.net/forum/viewtopic.php?t=39393" rel="nofollow">doppeltes öffnen eines programmes vermeiden</a> sollte eigentlich das sein, was du suchst!<br />
Also wenn die Anwendung ein weiteres Mal gestartet wird, stellt sie fest, dass sie bereits läuft und reicht die Daten für die zu öffnende Datei an die erste Instanz weiter, woraufhin diese sie dann öffnen kann</p>
]]></description><link>https://www.c-plusplus.net/forum/post/322178</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/322178</guid><dc:creator><![CDATA[flenders]]></dc:creator><pubDate>Thu, 31 Jul 2003 21:04:04 GMT</pubDate></item><item><title><![CDATA[Reply to System Context menu on Fri, 01 Aug 2003 13:31:58 GMT]]></title><description><![CDATA[<p>Hallo flenders,</p>
<p>nein das meine ich nicht, denn es muß eine andere Möglichkeit geben. Das muß mit bestimmten Einträgen in der Registry zusammenhängen. Bei einem Programm wie Winzip funktioniert das auch über Regestry-Einträge, nur verstehe ich nicht wie!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/322613</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/322613</guid><dc:creator><![CDATA[ub_e]]></dc:creator><pubDate>Fri, 01 Aug 2003 13:31:58 GMT</pubDate></item><item><title><![CDATA[Reply to System Context menu on Fri, 01 Aug 2003 16:04:47 GMT]]></title><description><![CDATA[<p>Bist du dir da sicher? Die können das doch genau so machen!<br />
Falls du Recht haben solltest, kannst du doch einfach in der Registry nachschauen, wie Winzip es macht <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/322727</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/322727</guid><dc:creator><![CDATA[flenders]]></dc:creator><pubDate>Fri, 01 Aug 2003 16:04:47 GMT</pubDate></item><item><title><![CDATA[Reply to System Context menu on Fri, 01 Aug 2003 16:39:18 GMT]]></title><description><![CDATA[<p>Ja ich bin mir sicher, da ich auch schon ein kleines bischen weitergekommen bin, weis ich, daß ich mein Programm irgendwie registrieren muß. So wie es Winzip macht funktioniert es nicht bei meinem Programm und ich weis nicht wiso.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/322754</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/322754</guid><dc:creator><![CDATA[ub_e]]></dc:creator><pubDate>Fri, 01 Aug 2003 16:39:18 GMT</pubDate></item><item><title><![CDATA[Reply to System Context menu on Fri, 01 Aug 2003 16:57:49 GMT]]></title><description><![CDATA[<p>Warum bist du dir da eigentlich so sicher? Du merkst davon nich nicht so sehr viel, wenn das Programm für ein paar 100stel Sekunden gestartet wird und sich gleich wieder schließt <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="🙄"
    /><br />
Weiterhelfen kann ich dir ansonsten leider nicht, aber ich kann mir ehrlich gesagt kaum vorstellen, dass Winzip o.ä. Programme dies anders machen. Außerdem: was spricht dagegen, im Programm zu testen, ob es schon läuft und ggf. einfach die Parameter an die erste Instanz weiterzuleiten <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/322770</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/322770</guid><dc:creator><![CDATA[flenders]]></dc:creator><pubDate>Fri, 01 Aug 2003 16:57:49 GMT</pubDate></item><item><title><![CDATA[Reply to System Context menu on Fri, 01 Aug 2003 17:23:45 GMT]]></title><description><![CDATA[<p>Dagegen spricht mein Ergeiz es zu verstehen wie es richtig gemacht wird.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/322791</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/322791</guid><dc:creator><![CDATA[ub_e]]></dc:creator><pubDate>Fri, 01 Aug 2003 17:23:45 GMT</pubDate></item><item><title><![CDATA[Reply to System Context menu on Fri, 28 Dec 2007 20:11:21 GMT]]></title><description><![CDATA[<p>Hi,</p>
<p>ich habe in meinem Programm ein Kontext-Menü integriert. Leider wird das nicht richtig angezeigt. Ich frage mich wieso, weil ich nämlich nach der MSDN gegangen bin (aus Verzweiflung sogar komplettes Copy &amp; Paste gemacht, was sogar auch nicht funktionierte).</p>
<p>Hier mal der Code:</p>
<pre><code class="language-cpp">... //Hier der Window Handler vom Hauptfenster
case WM_CONTEXTMENU: 
    if (!OnContextMenu(hwnd, LOWORD(lParam), HIWORD(lParam))) 
	return DefWindowProc(hwnd, message, wParam, lParam);
	break; 
...

BOOL WINAPI OnContextMenu(HWND hwnd, int x, int y) 
{ 
    RECT rc;                    // client area of window 
    POINT pt = { x, y };        // location of mouse click 

	HMENU hmenu;
    HMENU hmenuTrackPopup;

	hmenu = LoadMenu(hInstance, MAKEINTRESOURCE(ID_SETTINGS_MENU)); 
    hmenuTrackPopup = GetSubMenu(hmenu, 0); 

    GetClientRect(hwnd, &amp;rc); 
    ScreenToClient(hwnd, &amp;pt); 

    if (PtInRect(&amp;rc, pt)) 
    { 
        ClientToScreen(hwnd, &amp;pt); 
		TrackPopupMenu(hmenuTrackPopup, TPM_LEFTALIGN | TPM_LEFTBUTTON, pt.x, pt.y, 0, hwnd, NULL); 
		DestroyMenu(hmenu);
        return TRUE; 
    } 
    return FALSE; 
}
</code></pre>
<p>Kurzgesagt: Das Menü wird gar nicht angezeigt. Warum weiß ich nicht. Habs schon sehr lange selbst versucht.</p>
<p>mfg Rube</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1427397</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1427397</guid><dc:creator><![CDATA[Rube__]]></dc:creator><pubDate>Fri, 28 Dec 2007 20:11:21 GMT</pubDate></item><item><title><![CDATA[Reply to System Context menu on Fri, 28 Dec 2007 21:22:21 GMT]]></title><description><![CDATA[<p>Und was returniert LoadMenu? Wird das Meü evtl. gar nicht geladen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1427430</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1427430</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Fri, 28 Dec 2007 21:22:21 GMT</pubDate></item><item><title><![CDATA[Reply to System Context menu on Sat, 29 Dec 2007 12:36:38 GMT]]></title><description><![CDATA[<p>Doch geladen wird es schon, hab ich auch schon getestet, indem ich einfach SetMenu(); benutzt habe und das wird dann als Menu-Bar angezeigt.</p>
<p>btw. Sry für das posting im falschen Thread, weil ich falsch geschaut habe (nicht antworten, sondern neues thema sry)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1427583</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1427583</guid><dc:creator><![CDATA[Rube___]]></dc:creator><pubDate>Sat, 29 Dec 2007 12:36:38 GMT</pubDate></item></channel></rss>