Entwickler-Ecke

Windows API - Startmenü an anderer Stelle anzeigen


zakoon - Do 22.01.09 17:46
Titel: Startmenü an anderer Stelle anzeigen
Hallo zusammen,

es gibt viele Lösungen, wie ich das Startmenü aus meiner Anwendung heraus öffnen lassen kann. Leider habe ich aber keine gefunden, wie ich das Startmenü an einer bestimmten Stelle anzeigen lassen kann. Ich hätte es nämlich gerne nicht in der linken unteren Ecke wie üblich, sondern an einer beliebigen Position, wo gerade die Maus ist.

Es gibt einige Progrämmchen, die das können, es ist also möglich. Aber wie?

Viele Grüße, Za.


jaenicke - Do 22.01.09 17:49

Ich vermute diese suchen mit FindWindow das Fenster des Startmenüs nach dessen Anzeige und verschieben es an die gewünschte Position.


zakoon - Do 22.01.09 18:11

user profile iconjaenicke hat folgendes geschrieben Zum zitierten Posting springen:
Ich vermute diese suchen mit FindWindow das Fenster des Startmenüs nach dessen Anzeige und verschieben es an die gewünschte Position.


Ja, vielleicht, aber nach was soll ich suchen? "Shell_TrayWnd" scheint die ganze Taskleiste zu sein, auch den Start Button habe ich gefunden, aber nicht das Startmenü selbst.


jaenicke - Do 22.01.09 19:22

Naja, das Problem ist ja, dass das Startmenü nicht immer da ist. D.h. ich weiß nicht, ob die normalen Spy Tools da weiterhelfen. Ich werde gleich mal schauen wie es heißt, ich weiß schon wie ich da ran komme. ;-)


zakoon - Do 22.01.09 19:24

user profile iconjaenicke hat folgendes geschrieben Zum zitierten Posting springen:
Naja, das Problem ist ja, dass das Startmenü nicht immer da ist. D.h. ich weiß nicht, ob die normalen Spy Tools da weiterhelfen. Ich werde gleich mal schauen wie es heißt, ich weiß schon wie ich da ran komme. ;-)

Da bin ich gespannt, bin mit dem Winspector nämlich nicht sehr weit gekommen. Nur dass die Klasse "ToolbarWindow32" heißt, aber davon gibt es ne Menge...


jaenicke - Do 22.01.09 20:36

Ich hab da jetzt was, das Problem ist nur, dass der nicht überall gehen wird. Mit Vista und Windows 7 hat sich die Struktur geändert. Und deshalb muss ich das überall noch ausprobieren, das mache ich nachher.


zakoon - Do 22.01.09 20:40

user profile iconjaenicke hat folgendes geschrieben Zum zitierten Posting springen:
Ich hab da jetzt was, das Problem ist nur, dass der nicht überall gehen wird. Mit Vista und Windows 7 hat sich die Struktur geändert. Und deshalb muss ich das überall noch ausprobieren, das mache ich nachher.


Oh, das wäre prima. Falls du allerdings mit Vista Probleme hast, XP alleine würde mir auch schon helfen. Windows 7 brauche ich sowieso nicht mehr in diesem Jahr ;)


jaenicke - Fr 23.01.09 02:36

So, ich habe das einmal vorläufig als Prozedur geschrieben und hier in die Library gelegt:
http://www.delphi-library.de/viewtopic.php?p=545500

Ich werde noch ein wenig versuchen das zu optimieren. ;-)


jaenicke - Do 29.01.09 05:46

Ich habe mir das mittlerweile noch weiter angeschaut. Leider habe ich keine Lösung für das klassische Menü gefunden und daher den Eintrag für die Library entsprechend leicht umbenannt und editiert.

Das Problem ist, dass ich keine Möglichkeit gefunden habe das Fenster eindeutig zu finden. Die Fensterklasse und Überschrift ist leider nicht eindeutig im System. :nixweiss:

user profile iconzakoon hat folgendes geschrieben Zum zitierten Posting springen:
Es gibt einige Progrämmchen, die das können, es ist also möglich. Aber wie?
Welches denn zum Beispiel? Ich habe nur welche gefunden, die ein selbst gebasteltes anzeigen bisher.