如何在Windows中用Python抛出错误窗口

如何在Windows中用Python抛出错误窗口,python,windows,Python,Windows,在Windows中为Python脚本生成错误窗口的最简单方法是什么? Windows特定的答案很好;请不要回答如何生成自定义Tk窗口。如果需要GUI错误消息,可以使用: 否则,一个简单的打印(“错误!”)就足够了 如果我没有记错(目前没有Windows box),则ctypes方式是: import ctypes ctypes.windll.user32.MessageBoxW(None, u"Error", u"Error", 0) 是一个标准模块 注意:对于Python3.x,您不需要u前

在Windows中为Python脚本生成错误窗口的最简单方法是什么?
Windows特定的答案很好;请不要回答如何生成自定义Tk窗口。

如果需要GUI错误消息,可以使用:

否则,一个简单的
打印(“错误!”)
就足够了

如果我没有记错(目前没有Windows box),则
ctypes
方式是:

import ctypes
ctypes.windll.user32.MessageBoxW(None, u"Error", u"Error", 0)
是一个标准模块


注意:对于Python3.x,您不需要
u
前缀。

@Constantin几乎是正确的,但他的示例将生成垃圾文本。确保文本为unicode。即

ctypes.windll.user32.MessageBoxW(0, u"Error", u"Error", 0)

…而且它会很好地工作。

你可以用tkinter得到一个单衬里

import tkMessageBox

tkMessageBox.showerror('error title', 'error message')

以下是一些文档。

请查看Python Wiki部分,以获取有关消息框的信息

Tk有什么问题?用tkinter创建一个消息框非常简单。我正在寻找一个行得通的,谢谢!不过,不是很好,我必须安装另一个库。它是基于Tkinter的。我想要一个可以直接调用windows api的东西。几乎正确:)在3.x
ctypes.windell.user32.MessageBoxW(0,“Error”,“Error”,0)
会像预期的那样工作,而且
u“Error”
根本不会编译。啊,很高兴知道。当我被迫搬到py3k的时候,这将是一件非常头疼的事!出于兼容性的原因,我使用2.5,所以我需要Chris的。移动到3.0真的是非常困难的@Scribble大师,幸运的是官方2to3转换工具消除了很多头痛。啊,我不知道,谢谢!我确实更喜欢直接的win32调用,但请注意,有了这个答案,您还将获得一个主窗口。有关详细信息,请参阅。
import tkMessageBox

tkMessageBox.showerror('error title', 'error message')