コード例 #1
0
        public static async Task <bool> IsInServerModeAsync(CancellationToken token)
        {
            await NuGetUIThreadHelper.JoinableTaskFactory.SwitchToMainThreadAsync(token);

            IVsShell shell = await ServiceLocator.GetGlobalServiceAsync <SVsShell, IVsShell>();

            return(shell != null &&
                   shell.GetProperty((int)__VSSPROPID11.VSSPROPID_ShellMode, out object value) == VSConstants.S_OK &&
                   value is int shellMode &&
                   shellMode == (int)__VSShellMode.VSSM_Server);
        }