将Python嵌入基本IDE
我公司有一个用Visual Studio开发的C/C++应用程序。目前,我们有一个Visual Basic插件,可以让用户打开一个内置的文本编辑器并运行VB代码。这个内置的文本编辑器提供了所有基本的调试工具(比如断点、监视、单步执行等)。我在想,如何用Python实现类似的功能。比较棘手的是,Python解释器必须从主应用程序内部启动,这样它们才能共享同一块内存。
我已经为应用程序的API创建了一个swig接口,并做了一个VB脚本的概念验证,在这个脚本中我加载了Python作为DLL,并执行了一个脚本,具体做法可以参考这里。当我确保脚本没有错误时,这个方法运行得很好,但如果能有某种接口来调试正在执行的脚本,那就简单多了。
我查看了pdb模块,但感觉这不是正确的方向。如果有人能给我指个明路,我会非常感激。
1 个回答
0
我之前在一个用C/C++写的程序中成功嵌入了Spyder,这个程序我为它做了些封装(使用了PySide)。因为这些封装里包含了主要的应用逻辑,所以我把这个程序变成了一个Python应用,然后根据他们的示例把Spyder嵌入了进去。
不过,我觉得它底层还是用的pdb或者winpdb,所以功能上还不是很完整。