Open RainbowXie opened 8 months ago
可以,但是可能得等很久我才有空去实现。
我之前调试插件时用了两种方法,第一种是不需要启动时加载的插件,直接 idavscode launch 就可以调;另一种是必须启动时注册的,可以在插件代码里加上如下代码开一个调试 socket,然后 vscode remote attach(用 idavscode 执行一段代码也会打开一个调试 socket)。时间有点久远,第二种方式中 vscode 打开代码的路径应该是需要在 ida 插件路径里。
import debugpy
debugpy.listen(("localhost", 5678))
...
vscode remote attach 这个是在哪设置呢?没搜到有这个属性,直接用 idavscode 运行插件那一页的代码也不行。 我是在插件的代码最前面放的上面代码。是没对吗?
是 vscode Python 插件提供的 Remote Attach:add configuration... -> Python Debugger -> Remote Attach
{
"name": "Python Debugger: Remote Attach",
"type": "debugpy",
"request": "attach",
"connect": {
"host": "localhost",
"port": 5678
},
"pathMappings": [
{
"localRoot": "${workspaceFolder}",
"remoteRoot": "."
}
]
},
还是不行。主要我是注册的那种插件,写到注册的内容外面,执行 listen 之后调试就结束了;写到注册的内容里面,根本执行不到。🤣
调试 ida 插件的时候,必须得 attach 上,不能用 launch。这个插件能否实现?