コード例 #1
0
        private ProfilerPlugin(Package package, IVsOutputWindowPane outputPaneTizen, IVsThreadedWaitDialogFactory dialogFactory)
        {
            _package         = package ?? throw new ArgumentNullException(nameof(package));
            _outputPaneTizen = outputPaneTizen;
            _dialogFactory   = dialogFactory;

            OLEServiceProvider =
                GetService(typeof(Microsoft.VisualStudio.OLE.Interop.IServiceProvider)) as
                Microsoft.VisualStudio.OLE.Interop.IServiceProvider;

            VsUiShell5 = GetIVsUIShell5();

            ExplorerWindowCommand.Initialize(_package);
            ProfilingProgressWindowCommand.Initialize(_package);

            GeneralOptions   = new GeneralOptions(new SettingsStore(_package, SettingsCollectionPath));
            HeaptrackOptions = new HeaptrackOptions(new SettingsStore(_package, SettingsCollectionPath));

            RegisterMenuHandlers();

            ProfileLauncher.Initialize();
            HeaptrackLauncher.Initialize();

            ProfileLauncher   = ProfileLauncher.Instance;
            HeaptrackLauncher = HeaptrackLauncher.Instance;
            HeaptrackLauncher.OnSessionFinished += HandleMenuItemRunMemoryProfiler;

            _solutionListener = new SolutionListener(_package)
            {
                AfterOpenSolution = delegate
                {
                    _solutionSessionsContainer.Update();
                    return(VSConstants.S_OK);
                },
                AfterCloseSolution = delegate
                {
                    _solutionSessionsContainer.Update();
                    return(VSConstants.S_OK);
                }
            };
            _solutionListener.Initialize();

            _solutionSessionsContainer = new SolutionSessionsContainer((DTE2)Package.GetGlobalService(typeof(SDTE)));
        }
コード例 #2
0
        public HeaptrackSessionConfiguration(Project project, HeaptrackOptions hto) : base(project)
        {
            ReadProjectConfiguration();

            ProjectHostBinPath = Path.Combine(ProjectHostPath, ProjectOutputPath);
        }