コード例 #1
0
        public BuildTracker(
            DTE2 vsInstance,
            IVsSolutionBuildManager2 buildManager,
            BuildRestartSettings settings
            )
        {
            Ensure.That(() => vsInstance).IsNotNull();
            Ensure.That(() => settings).IsNotNull();
            Ensure.That(() => buildManager).IsNotNull();

            _vsInstance   = vsInstance;
            _settings     = settings;
            _buildManager = buildManager;
            _buildManager.AdviseUpdateSolutionEvents(this, out uint pdwCookieSolutionBM);
        }
コード例 #2
0
        /// <summary>
        /// Initialization of the package; this method is called right after the package is sited, so this is the place
        /// where you can put all the initialization code that rely on services provided by VisualStudio.
        /// </summary>
        protected override void Initialize()
        {
            //Command.Initialize(this);
            base.Initialize();
            var settingsStore = new Lazy <WritableSettingsStore>(() => new ShellSettingsManager(this).
                                                                 GetWritableSettingsStore(SettingsScope.UserSettings));

            Settings    = new BuildRestartSettings(settingsStore);
            _vsInstance = (DTE2)GetService(typeof(DTE));
            var solutionBuildManager = (IVsSolutionBuildManager2)GetService(typeof(SVsSolutionBuildManager));

            //var statusBar = (IVsStatusbar)GetService(typeof(SVsStatusbar));
            //var logger = new ExtensionLogger(() => GetService(typeof(SVsActivityLog)) as IVsActivityLog, statusBar);
            //never cache the activity log reference
            _buildTracker = new BuildTracker(
                _vsInstance,
                solutionBuildManager,
                Settings
                );
        }