我的应用程序使用用户可创建的 python 脚本与应用程序交互。我为此使用了python c API,因此使用了dll。我既不使用也不打算将 python.exe 本身部署给最终用户。为了使事情变得更加困难,我还想从内存中调用脚本,而不是从文件中调用。
我怎样才能实现这样的调试功能?我能找到的只有
python -m pdb myscript.py
这意味着调用 exe(=其他进程),并将脚本保存到文件中。此外,不幸的是,这会弹出另一个窗口。
API 中有一些 Py_* 调试方法,但我不知道如何正确实现它们,或者它们是否适合我的用例。
目前我认为要走的路是启动一个隐藏的调试器,以某种方式附加到 python 系统,然后读/写回与应用程序的通信。只是我没有起点。