メニュー項目を VS に提供する VS アドインを作成すると、QueryStatus
実装が呼び出されて、メニュー項目が表示されるか、有効になるかなどがチェックされます。
ビルド中など、特定の状況でメニュー項目を実行するのは適切ではありません。ビルドが実行されているかどうかを検出するにはどうすればよいですか?
メニュー項目を VS に提供する VS アドインを作成すると、QueryStatus
実装が呼び出されて、メニュー項目が表示されるか、有効になるかなどがチェックされます。
ビルド中など、特定の状況でメニュー項目を実行するのは適切ではありません。ビルドが実行されているかどうかを検出するにはどうすればよいですか?
あなたは方法を探していますVsShellUtilities.IsSolutionBuilding
。これを使用する例は、次のProjectNode
クラスの Managed Package Framework for Visual Studio 2010 (MPFProj10) にあります。
protected internal virtual bool IsCurrentStateASuppressCommandsMode()
{
if (VsShellUtilities.IsSolutionBuilding(this.Site))
{
return true;
}
DBGMODE dbgMode = VsShellUtilities.GetDebugMode(this.Site) & ~DBGMODE.DBGMODE_EncMask;
if (dbgMode == DBGMODE.DBGMODE_Run || dbgMode == DBGMODE.DBGMODE_Break)
{
return true;
}
return false;
}