public ProcEvent(CommandCustomWatch watch)
        {
            m_watch       = watch;
            m_debugEvents = watch.m_dte.Events.DebuggerEvents;
            m_debugEvents.OnEnterBreakMode  += OnEnterBreak;
            m_debugEvents.OnEnterDesignMode += OnEnterOther;
            m_debugEvents.OnEnterRunMode    += OnEnterOther;

            WatchConfig.InitAppConfig();
        }
        public configForm()
        {
            InitializeComponent();
            string strDllName;
            string strDLLFunc;

            WatchConfig.GetAppConfig(out strDllName, out strDLLFunc);
            textBox1.Text = strDllName;
            textBox2.Text = strDLLFunc;
        }
        private void button1_Click(object sender, EventArgs e)
        {
            string strDllName = textBox1.Text;
            string strDLLFunc = textBox2.Text;

            if (strDLLFunc != "" && strDLLFunc != "")
            {
                WatchConfig.SetAppConfig(strDllName, strDLLFunc);
                Close();
            }
            else
            {
            }
        }
        private bool CustomWatch(string address, string type, out string strErrorMsg, out string strRetValue)
        {
            strErrorMsg = "";
            strRetValue = "";
            string dllName  = "";
            string funcName = "";

            WatchConfig.GetAppConfig(out dllName, out funcName);
            if (dllName == "" || funcName == "")
            {
                m_watch.OutputStr("Callback Dll: <" + dllName + ">");
                m_watch.OutputStr("Callback Function: <" + funcName + ">");
                strErrorMsg = "Config Error, please using \"tools->AsString Config\" to modify config!";
                return(false);
            }
            return(CalcCustomWatch(dllName, funcName, address, type, out strErrorMsg, out strRetValue));
        }