Da Deine Shell-Erweiterung mit einem eigenen Dateityp funktioniert, hast Du sie also schon mal korrekt registriert. Wenn sie allerdings mit einem Typ, für den bereits andere Erweiterungen registriert sind, nicht angezeigt wird, könnte es sein, dass mit dem Rückgabewert aus QueryContextMenu etwas nicht stimmt. (Dieser Rückgabewert ist der Startwert für die IDs der Menüeinträge der folgenden Extension-Handler.)
Laut
MSDN solltest Du folgenden Wert zurückgeben:
MakeResult(SEVERITY_SUCCESS,0,GrößteID-KleinsteID+1);
D.h., falls Du das verlinkte Tutorial so übernommen hast, solltest Du als Result nicht 4 sondern 5 übergeben, da das Untermenü selbst auch eine ID bekommen hat (idCmdFirst+4):
Code:
(idCmdFirst+4) - idCmdFirst + 1 = 5
Könnte mir vorstellen, dass hier das Problem liegt,
Gruß, teebee