Registriert seit: 6. Apr 2005
10.109 Beiträge
|
Re: Rückgabewert für QueryContextMenu erstellen
18. Jul 2008, 13:28
Hallo Guido,
nach meinem Verständnis ist der Rückgabewert nicht von der Anzahl der bereitgestellten Menuitems abhängig, sondern entspricht einfach der Zahl der verbrauchten Command Identifier, gerechnet ab dem ersten möglichen in idCmdFirst übermittelten Wert. Dabei zählen eventuelle Lücken mit, die dadurch entstehen, dass du die ID-Werte nicht sequentiell vergibst. Die Shell rechnet diesen Wert auf idCmdFirst drauf, wenn sie die Kontrolle an den nächsten ContextMenuHandler weitergibt.
Der als HRESULT zurückgegebene Wert (32 bit) ist gepackt. Das gesetzte höchste Bit signalisiert einen Fehler, die untersten 16 bit übermitteln im vorliegenden Fall das eigentliche Ergebnis. Da die oberen 16 bit bei dir 0 sind, kannst du auf MakeResult() verzichten.
Freundliche Grüße
|