Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Systemmenü eines fremden Prozesses öffnen

Empfohlene Antworten

Veröffentlicht

Guten Morgen.

Aufgrund eines Tipps einer Freundin bin ich hier in dieses Forum gekommen. Sie meinte hier würd man echt gut Hilfe bekommen.

Dann werd ich das direkt mal versuchen in Anspruch zu nehmen ;-)

Also, es geht mir um folgendes:

Ich schreibe einen kleinen Ersatz für den Windows-Explorer als Desktop-Shell.

Hierzu benötige ich natürlich eine Art Taskleistenfunktion.

Die Taskleiste an sich funktioniert auch wunderbar, aber:

Ich möchte, wenn ich mit der rechten Maustaste auf ein TaskItem in meinem Programm klicke, dass das Systemmenü des jeweiligen Prozesses aufgerufen wird.

Bisher versuche ich es mit folgendem Code:

void TaskListButton::contextMenuEvent( QContextMenuEvent* ptrEvent )

{

HMENU systemMenu = GetSystemMenu( this->taskObject()->handle(), false );

BOOL b = TrackPopupMenu( systemMenu, TPM_LEFTALIGN | TPM_TOPALIGN, ptrEvent->globalX(), ptrEvent->globalY(), 0, taskObject()->handle(), 0 );

// taskObject()->handle() ist das HWND-handle des Fensters, dessen Systemmenü ich erhalten möchte

}

Wird dieser Code für meinen eigenen Prozess ausgeführt, funktioniert dies.

Wenn ich dies für ein HWND eines fremden Prozesses ausführe, erhalte ich ein ungültiges HMENU-handle.

Eben diese oben erwähnte Freundin meinte, laut der Doku von MS wäre die Funktion auch gar nicht geeignet um das Menü eines fremden Prozesses zu beziehen.

Siehe hierzu: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winui/winui/windowsuserinterface/resources/menus/menureference/menufunctions/getsystemmenu.asp

Hat irgendjemand einen Tipp für mich, wie ich das Lösen kann?

Bin ich mit GetSystemMenu überhaupt auf dem richtigen Weg?

Ich verzweifel so langsam daran....

Für etwaige Hilfe möchte ich mich im Vorfeld bedanken.

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.