调试c ++进程由c#程序启动

时间:2015-03-01 10:34:39

标签: c# c++ debugging visual-studio-2013

我有2个项目在解决方案中。 C#program whitch启动新进程(c ++程序)。我希望能够调试c ++程序。我找到了这段代码。

        public static void Attach(this System.Diagnostics.Process process)
    {
        System.Type type = Type.GetTypeFromProgID("VisualStudio.DTE.12.0");
        EnvDTE.DTE dte = (EnvDTE.DTE)System.Activator.CreateInstance(type);
        int tryCount = 5;
        while (tryCount --> 0)
        {
            try
            {
                Processes processes = dte.Debugger.LocalProcesses;
                foreach (EnvDTE.Process proc in processes.Cast<EnvDTE.Process>().Where(
                  proc => proc.Name.IndexOf(process.ProcessName) != -1))
                {
                    proc.Attach();
                    Debug.WriteLine(String.Format
                    ("Attached to process {0} successfully.", process.ProcessName));
                    break;
                }
                break;
            }
            catch (COMException)
            {
                System.Threading.Thread.Sleep(1000);
            }
        }
    }

debuger已经获得,但在c ++项目中是错误

  

“断点当前不会被击中。没有加载任何符号   对于这份文件。“

我已启用原生代码调试

0 个答案:

没有答案