Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/334.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Gimp python插件调试与Winpdb故障_Python_Gimp_Gimpfu_Winpdb - Fatal编程技术网

Gimp python插件调试与Winpdb故障

Gimp python插件调试与Winpdb故障,python,gimp,gimpfu,winpdb,Python,Gimp,Gimpfu,Winpdb,我想调试一些脚本,我遵循了这篇文章中的OmidRaha建议 系统可以工作,因此我可以单步执行代码,但当执行达到 from gimpfu import * 错误是: (pythonw.exe:3588):LibGimpBase错误**:gimp\u wire\u write\u msg:the wire 协议尚未初始化 我在代码文件的开头放置了: import rpdb2; rpdb2.start_embedded_debugger("pass") 如果我注释这一行并在没有调试器的情况下运行

我想调试一些脚本,我遵循了这篇文章中的OmidRaha建议

系统可以工作,因此我可以单步执行代码,但当执行达到

from gimpfu import *
错误是:

(pythonw.exe:3588):LibGimpBase错误**:gimp\u wire\u write\u msg:the wire 协议尚未初始化

我在代码文件的开头放置了:

import rpdb2; rpdb2.start_embedded_debugger("pass")
如果我注释这一行并在没有调试器的情况下运行代码,它将正确运行

多谢各位


Marco

GIMP插件只能从GIMP本身内部运行-如果它们是由GIMP外部的外部调试系统启动的,它们将无法工作

我不知道这个“rpdb2”工具——但它表明可以附加到正在运行的进程(至少,我知道的一个“rpdb”)上——那么,您是否尝试过从GIMP中启动脚本并稍后附加调试器


(导入步骤中出现的错误是由于没有从GIMP内部运行)

是的,我知道GIMP插件只能从GIMP内部运行。我的插件从GIMP启动,然后(稍后)将外部调试器附加到进程。Winpdb调试器在GIMP外部运行,并在不同文件夹中使用另一个pythonw.exe;这可能是错误的原因吗?谢谢,当然是。错误消息准确地告诉我们:Wire protocol not initialized是一种告诉它无法与GIMP“对话”的方式。请记住,如果无法设置调试,则可以从GIMP的交互式Python控制台进行PDB和其他调用—这就是我了解各种调用的确切语义的方式。