我正在尝试调试(命中断点)一个通过 C# 中的新进程执行的 python 脚本。我已经安装了Child Process Debugging Power 工具,因为该工具应该允许人们这样做。根据其文档,它需要两件事:必须使用本机调试引擎调试父进程父进程必须使用 CreateProcess 或 CreateProcessAsUser Win32 API 启动子进程。我的流程创建如下:ProcessStartInfo startInfo = new ProcessStartInfo();Process p = new Process();startInfo.CreateNoWindow = true;startInfo.UseShellExecute = false;startInfo.RedirectStandardOutput = false;startInfo.RedirectStandardError = true;startInfo.RedirectStandardInput = false;...p.StartInfo = startInfo;p.EnableRaisingEvents = true;p.Start();据我所知,只要我使用UseShellExecute = false; 该过程应从 CreateProcess 开始。(要求 2)在我的项目中,我还启用了本机代码调试。(要求 1)我还在我的符号列表中包含了 python.pdb 和 python36.pdb。但是似乎我找不到 python3.pdb'python.exe' (Win32): Loaded 'C:\...\Python36\python.exe'. Symbols loaded.'python.exe' (Win32): Loaded 'C:\...\Python36\python36.dll'. Symbols loaded.'python.exe' (Win32): Loaded 'C:\...\python3.dll'. Cannot find or open the PDB file.当我使用调试符号安装 python 时,这不包括在内,我似乎在其他任何地方都找不到它。我正在使用 Visual Studio 2017,没有遇到断点。
1 回答
尚方宝剑之说
TA贡献1788条经验 获得超4个赞
如果有人偶然发现这篇文章,请快速更新。
我联系了这个工具的创建者,尽管它的描述可能表明我在这里尝试做的事情应该有效,但它没有。
我与之交谈的人说他会与他的 Python 团队讨论这个问题,但我已经几个月没有听到任何消息了,所以我认为这不会很快发生。
- 1 回答
- 0 关注
- 243 浏览
添加回答
举报
0/150
提交
取消