2016-05-27 3 views
2

J'ai une application Visual Studio Shell 2013 et je voudrais passer à Shell 2015 et j'ai rencontré un problème lié à la capture de commandes. Dans l'ancienne version, la commande F1 est capturée et remplace le comportement par défaut. (Basé sur How to capture Visual Studio commands in a VSPackage Plugin?)Visual Studio Shell 14 commande de ruines de mise à niveau capturant dans VSPackage

Ceci est le code de VSPackage qui travaille avec la coquille 13:

m_objDTE = (DTE)GetService(typeof(DTE)); 

    var F1HelpGuid = typeof(VSConstants.VSStd97CmdID).GUID.ToString("B"); 
    var F1HelpID = (int)VSConstants.VSStd97CmdID.F1Help; 

    F1HelpEvent = m_objDTE.Events.CommandEvents[F1HelpGuid, F1HelpID]; 
    F1HelpEvent.BeforeExecute += CapturedF1HelpCommand; 

Après la mise à jour de la commande F1 est pas capturé.

Avez-vous une idée pourquoi cela est-il arrivé? Est-ce que le F1 a changé d'ID?

Répondre

1

Avez-vous vu ma dernière réponse à votre message dans le VS Extensibility forum?

La raison pour laquelle l'événement ne se déclenche jamais est que les commandes d'aide sont désactivées via ApplicationCommands.vsct des applications stub. Vous devez commenter la

entrée

pour réactiver la commande F1. Ensuite, vous devriez voir votre gestionnaire d'événements appelé.

+0

Désolé Ed en raison de ma réponse en retard, Merci la recherche et l'hep – tstanitz