Пример #1
0
 public void Dispose()
 {
     //if (procTracer != null)
     //{
     //  int nRef = System.Runtime.InteropServices.Marshal.ReleaseComObject(procTracer);//???FinalReleaseComObject???
     //  procTracer = null;
     //}
     TraceTransport.ReleaseProcTracer(id, ref procTracer);
 }
Пример #2
0
        private void OnProcDebugCreate(CPProcEvArgs args)
        {
            IProjectChartPoints pPnts = Globals.processor.GetProjectChartPoints(Path.GetFileNameWithoutExtension(args.Name));

            if (pPnts != null && pPnts.Count > 0)
            {
                TraceTransport.Open();
                traceHandlers.Add(new CPTraceHandler(args.procId, args.Name));
                cpTraceFlag = true;
            }
        }
Пример #3
0
        private void OnProcDebugDestroy(CPProcEvArgs args)
        {
            CPTraceHandler tracer = traceHandlers.FirstOrDefault((h) => (h.id == args.procId));

            if (tracer != null)
            {
                tracer.Dispose();
                traceHandlers.Remove(tracer);
                tracer = null;
                if (traceHandlers.Count == 0)
                {
                    TraceTransport.Close();
                    ICPTracerService traceServ;
                    cpServProv.GetService <ICPTracerService>(out traceServ);
                    traceServ.Show();
                }
            }
        }
Пример #4
0
        public CPTraceHandler(ulong _id, string name)
        {
            id = _id;
            ICPServiceProvider cpServProv = ICPServiceProvider.GetProvider();
            ICPTracerService   traceServ;

            cpServProv.GetService <ICPTracerService>(out traceServ);
            traceServ.RegProcTracer(_id, name, out localProcTracer);

            //Globals.outputWindow.GetPane(Microsoft.VisualStudio.VSConstants.OutputWindowPaneGuid.DebugPane_guid, out outputWindowPane);
            //if (outputWindowPane != null)
            //  outputWindowPane.Activate();
            if (TraceTransport.GetProcTracer(id, out procTracer))
            {
                procTracer.OnRegElem += RegElem;
                procTracer.OnTrace   += Trace;
            }
        }