使用webkit的open(url)函数时,使用py2exe创建的可执行文件会冻结

时间:2013-03-16 01:15:24

标签: python webkit py2exe cairo gui2exe

我正在使用GUI2Exe program来创建我的可执行文件,虽然我可以构建并启动可执行文件,但它在调用“打开”URL时崩溃了。这不仅可以在我的程序中重复,而且可以在超级简单的14 line webkit browser中重复。什么时候 使用cx_freeze而不是py2exe。

在Windows诊断事件中报告的“问题签名”指向它的手指在libcairo-2.dll

注释掉browser.open(url)调用会导致窗口打开(尽管没有浏览器将加载的内容)并响应close命令。

gobject.threads_init()
window = gtk.Window()
browser = webkit.WebView()
#browser.open("http://www.google.com")
window.add(browser)
window.show_all()

从命令行运行(python myprogram.py),我的程序在Windows和Ubuntu上都能正常运行。正式将此问题陈述为一个问题:如何解决这个问题并成功创建一个功能“冻结”的python可执行文件?

1 个答案:

答案 0 :(得分:0)

我最好的解决方案是重写程序以使用qtwebkit库。用py2exe播放得更好。