我正在嘗試調試(命中斷點)一個通過 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 關注
- 272 瀏覽
添加回答
舉報
0/150
提交
取消