robcomboy
Goto Top

Programm beim Klick auf den Startbutton ausführen

Startmenu sortieren

Hoffe, ich bin hier richtig.
Habe keinen passenden Bereich gefunden.

Ich habe hier ein kleines Programm dass ein Paar Keys in der Registry löscht, um das
Startmenu alphabetisch zu sortieren. nun möchte ich, das dieses Programm immer dann
ausgeführt wird, wenn ich den Startbutton von Windows klicke.

Kann mir jemand sagen, wie ich das realisiere?

Danke schon mal.
Grüße, robcomboy

Content-ID: 103925

Url: https://administrator.de/contentid/103925

Ausgedruckt am: 23.11.2024 um 05:11 Uhr

eldiablo9100
eldiablo9100 12.12.2008 um 08:52:44 Uhr
Goto Top
Hi
Also du bist in der richtigen Abteilung :D
Welchen Start-Button meinst du ?
Wenn du den Start-Button am Gehäuse meinst, dann kannst do deine Programm.exe in den Autorstart einbinden.
Xp= Windows-Taste -> Programme -> Autostart
Vista= Windows-Taste -> Alle Programme -> Autostart

Wenn du die Windows Taste meinst mit "Start" dann must du eine programierbare Tastatur haben. Das sind alle aussert die Standarts.
Mit einer einfachen Standarttastatur geht das glaub ich net...
LIebe Grüsse
Der Teufel face-wink
robcomboy
robcomboy 12.12.2008 um 09:14:29 Uhr
Goto Top
Hi, Danke für die Antwort.
Also, das Ziel ist das Programm auf zu rufen, wenn ich den
Windows Startmenü "Start-Button" klicke.

Ich hatte mir überlegt, weiss aber nicht ob das geht, dass man einen "Event" abfragt, in diesem Fall,
den Klick auf den Startnutton in der Taskleiste und dann das Programm ausführt.

Hmm, mal sehen, ob ich mein kb irgendwie programmmieren kann.
Aber es sollte eigentlich ohne eine Hardwareabhängigkeit funktionieren.

Grüße, robcomboy
Razalduria
Razalduria 12.12.2008 um 09:29:28 Uhr
Goto Top
Also in C würde ich mit Hilfe der WinAPI den Start-Button (der ja nix weiter ist als ein ChildWindow der Taskleiste) hooken und auf die Meldung WM_LBUTTONUP Nachricht warten, um dann zuerst das gewünschte Programm zu starten und dann die Message an Windows weiterzuleiten.

Das ist allerdings schon etwas "höhere" Programmierung und es muß ein Programm (nämlich das zu schreibende Hook-Programm) ständig laufen, damit das so funktioniert.

Gehen tut das allemale, Frage ist obs nicht etwas zu aufwendig zu realisieren ist.
robcomboy
robcomboy 12.12.2008 um 09:41:59 Uhr
Goto Top
Also, an sich spricht ja nichts dagegen, das ein kleines Programm im hintergrund läuft.
Ich kann leider kein C programmieren, ist das wirklich so viel Arbeit?

Trotzdem Danke.
25510
25510 12.12.2008 um 09:59:27 Uhr
Goto Top
Willkommen in der IT.


mfg, Tz
Razalduria
Razalduria 12.12.2008 um 10:13:12 Uhr
Goto Top
Man kann vieles recht einfach mittels "Bordmitteln" (sprich: Windows API) unter Windows regeln. Damit kannst Du nahezu alles mit Fenstern (und bei Windows sind alles, was dargestellt wird, Fenster) anstellen: verschieben, vergrößern, verstecken usw.

Dazu gehört auch der Start-Button (der auch ein Fenster ist).

Das ist das "aktive" Eingreifen in ein Fenster, was jedes Programm kann (darf).

Da Du aber auf eine Benutzer-Aktion auf ein Unterfenster (nämlich einen Klick) eines nicht von Dir geschriebenen Programmes (nämlich explorer.exe) aktiv werden willst, mußt Du Dich in dieses Programm (explorer.exe) einklinken.

Das geht nur mit Hilfe einer DLL, die durch den Start Deines Programmes in das gewünschte laufende Programm injiziert wird.

Somit sind wir bei der DLL-Programmierung, und der injizierung eines Systemweiten "Hooks", und das zählt leider nicht zum Einsteigerprogramm in der Windows-Programmierung, und somit ist das recht aufwendig, ja.
robcomboy
robcomboy 12.12.2008 um 10:19:36 Uhr
Goto Top
Hi Razalduria,
Danke für die Erklärung, jetzt habe ich so langsam ein Vorstellung
davon, was da alles dran hängt. Dann werde ich mich wohl nach einer Alternative
umsehen müssen. .

Man könnte die kleine exe auch in den Taskmanager setzten und alle 10 Minuten ausführen lassen.
Klickt man innerhalb des 10-minuten Intervalls mehrfach ins Startmenü kommt es dann natürlich vor, dass
das Menü nicht immer alphabetisch sortiert ist.

Grüße, robcomboy