Kontextmenü-Eintrag hinzufügen?

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
Scarabol
Beiträge: 1427
Registriert: 30.11.2005 21:00

Kontextmenü-Eintrag hinzufügen?

Beitrag von Scarabol »

Hi Leute,

ich wollte für eins meiner Tools einen Eintrag im Kontextmenü (Rechtsklickmenü) des Desktops erstellen. Hab zuerst bei Google gesucht und ein dutzend Anleitungen gefunden, wie man diese erstellt.

Immer wurden Registry Einträge erstellt, aber andere Programme wie Antivir oder ATI Catalyst haben solche Einträge ohne Registry Einträge, und hier die Frage:
Wie machen die das?

Haben die vielleicht sogar Windows Systemdateien manipuliert?
Oder gibt es eine Art zweite Registry in der sowas stehen könnte?
Oder ne Ini Datei?

Gruß
Scarabol

__________________________________________________
Dieser Thread wurde in den Anfänger-Bereich verschoben
(RSBasic)
Abgeschlossen Projekte:
Schreibmaschine, Bildschirmlupe, Wings3DtoOgreMeshConverter
Watch: PureArea

PB-V: 4
WinXP
Benutzeravatar
Kiffi
Beiträge: 10714
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Re: Kontextmenü-Eintrag hinzufügen?

Beitrag von Kiffi »

Scarabol hat geschrieben:aber andere Programme wie Antivir oder ATI Catalyst haben solche Einträge ohne Registry Einträge
kann ich mir eigentlich nicht vorstellen. Ist das jetzt eine Vermutung von Dir
oder kannst Du das irgendwie belegen?

Grüße ... Kiffi
a²+b²=mc²
Benutzeravatar
RSBasic
Admin
Beiträge: 8047
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Beitrag von RSBasic »

@Scarabol
>Immer wurden Registry Einträge erstellt, aber andere Programme wie Antivir oder ATI Catalyst haben solche Einträge ohne Registry Einträge, und hier die Frage:
>Wie machen die das?
Das ist glaube ich möglich, dazu muss man den Handle des Kontextmenü ermitteln und irgendwie was hinzufügen.
Oder per Registry, aber mit dem Handle ist sicherer.

>Haben die vielleicht sogar Windows Systemdateien manipuliert?
Auf keinen Fall

>Oder gibt es eine Art zweite Registry in der sowas stehen könnte?
Es gibt keine zweite Registry

>Oder ne Ini Datei?
System.ini, Win.ini, Boot.ini
Das hat aber überhaupt nix zu tun.
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Benutzeravatar
Scarabol
Beiträge: 1427
Registriert: 30.11.2005 21:00

Beitrag von Scarabol »

@Kiffi
Ich hab die Registry nach dem Text durchsucht der im Kontextmenü auch auftaucht und ich hab alle Schlüssel abgesucht, welche in den Tutorials beschrieben wurden um einen Eintrag hinzuzufügen...

@RSBasic
Wenn das mit dem Handle stimmen sollte, dann müsste das Programm ja die ganze Zeit das Menü kontrollieren oder?
Kann es aber nicht mehr wenn es beendet wird oder?
Aber Antivir zeigt trotzdem noch den Eintrag an....

Gruß
Scarabol
Abgeschlossen Projekte:
Schreibmaschine, Bildschirmlupe, Wings3DtoOgreMeshConverter
Watch: PureArea

PB-V: 4
WinXP
Benutzeravatar
Zaphod
Beiträge: 2875
Registriert: 29.08.2004 00:40

Beitrag von Zaphod »

Es gibt für antiviren Programme einen eigenen Eintrag... da taucht immer das installierte Standard antivirenprorgamm auf. Funktioniert genauso wie mit den defaults für den Standard browser.
Benutzeravatar
ZeHa
Beiträge: 4760
Registriert: 15.09.2004 23:57
Wohnort: Friedrichshafen
Kontaktdaten:

Beitrag von ZeHa »

Soweit ich weiß ist in der Reg doch dann immer so ein langer kryptischer Ausdruck drin, ich denke das ist der Verweis auf das Menu-Handle... aber wie man ein Menu-Handle macht, das wüßt ich auch mal gern ;)

WinRAR und WinZIP machen das ja auch... gibt's keinen opensource-Packer, der das ebenfalls macht? Dann könnte man sich da ja mal einlesen...
Bild     Bild

ZeHa hat bisher kein Danke erhalten.
Klicke hier, wenn Du wissen möchtest, woran ihm das vorbeigeht.
Benutzeravatar
edel
Beiträge: 3667
Registriert: 28.07.2005 12:39
Computerausstattung: GameBoy
Kontaktdaten:

Beitrag von edel »

Ohne geht es auch, einfach per Hook oder Injektion eine DLL in den Explorer
packen, die InitPopupmenu (oder so) Message abfangen und dann bearbeiten.
Benutzeravatar
Scarabol
Beiträge: 1427
Registriert: 30.11.2005 21:00

Beitrag von Scarabol »

Jo danke,

für eure Theorien aber könntet ihr ein wenig konkreter werden :D

So alla Beispiel hehe

Gruß
Scarabol
Abgeschlossen Projekte:
Schreibmaschine, Bildschirmlupe, Wings3DtoOgreMeshConverter
Watch: PureArea

PB-V: 4
WinXP
Benutzeravatar
edel
Beiträge: 3667
Registriert: 28.07.2005 12:39
Computerausstattung: GameBoy
Kontaktdaten:

Beitrag von edel »

Was klappt denn nicht ?

Kann mal jemand nach Anfaenger verschieben ? "hehe"

:allright:
Benutzeravatar
Scarabol
Beiträge: 1427
Registriert: 30.11.2005 21:00

Beitrag von Scarabol »

Ok edel,

wenn ich dann mein Example kriege :D

Bitte verschieben!

Gruß
Scarabol

PS
Hab noch nie was mit Hook oder Injection gemacht...
Abgeschlossen Projekte:
Schreibmaschine, Bildschirmlupe, Wings3DtoOgreMeshConverter
Watch: PureArea

PB-V: 4
WinXP
Antworten