Exemplo n.º 1
0
        //============================================================================
        // onClientConnected
        //============================================================================
        public void onClientConnected(string name, string pdbFilename)
        {
            AllocStats.clearHeaps();


            LoadSymbolsParams lsp = new LoadSymbolsParams();

            lsp.mProcHandle     = 0x00ABBEEF;  // Process.GetCurrentProcess().Id;
            lsp.mSymbolFileName = pdbFilename; //string sName = @"C:\depot\phoenix\xbox\code\xgame\xbox\debug\xgameD.exe";

            //since this takes so long, spend display a 'wait' bar to the user..
            {
                mSymbolProcEvent.Reset();

                BackgroundWorker mWorkerThread = new BackgroundWorker();
                mWorkerThread.WorkerReportsProgress = false;
                //mWorkerThread.ProgressChanged += bw_ProgressChanged;
                mWorkerThread.WorkerSupportsCancellation = false;
                //mWorkerThread.RunWorkerCompleted += bw_RunWorkerCompleted;
                mWorkerThread.DoWork += bw_DoWork;
                mWorkerThread.RunWorkerAsync(lsp);

                HaloWarsMem.loadSymbolInfo((uint)lsp.mProcHandle, lsp.mSymbolFileName);

                mSymbolProcEvent.Set();
            }
            AllocLogStream.unpauseProcessing();


            heapLines.onConnect();
            heapKey.onConnect();
            heapFileView.onConnect();
            topAllocs.onConnect();
            mFileTimelines.onConnect();
            mFileGroupings.onConnect();
        }