[Visual Studio] Переопределить shortcut F5
От: Divineshadow  
Дата: 17.06.15 12:38
Оценка:
Всем привет.
Есть задача запускать по F5 команду Test Explorer->Run All
Как переопределить шорткат только для одного проекта я не нашёл.
Придумал написать add-in — задать ему shortcut F5, и уже внутри него смотреть:
если в солюшине стартовый проект он же тестовый, то _applicationObject.ExecuteCommand("TestExplorer.RunAllTest");
else
_applicationObject.ExecuteCommand("Debug.Start");

В принципе это работало бы, если бы не одно НО — в процессе отладки F5 выполняет функцию Continue.
А такой команды, что то вроде "Debug.Continue" я не нашёл..
В общем кто, что думает по этому поводу?

Вот псевдокод метода Exec моего add-in:
public void Exec(string commandName, vsCommandExecOption executeOption, ref object varIn, ref object varOut, ref bool handled)
        {
            handled = false;
            if(executeOption == vsCommandExecOption.vsCommandExecOptionDoDefault)
            {
                if(commandName == "MyAddin1.Connect.MyAddin1")
                {
                    handled = true;

                    if(_applicationObject.IsDebugging)
                    {
                        _applicationObject.ExecuteCommand("Debug.Continue"); //! вот этой команды и нет :(
                    }
                    else
                    {
                        SolutionBuild2 sb = (SolutionBuild2)_applicationObject.Solution.SolutionBuild;

                        if(sb[0] is TestProjectType)
                            _applicationObject.ExecuteCommand("TestExplorer.RunAllTest"); 
                        else
                            _applicationObject.ExecuteCommand("Debug.Start");

                    }
                    return;
                }
            }
        }
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.