Mac OS X Python GUI 管理员提示窗口

2024-10-01 13:32:59 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个使用wxPython作为GUI控件的osx Python应用程序。我希望在启动网络服务之前提示用户输入管理权限(类似于使用Objective-C中的授权服务API)。在

我找到的最接近的库是Bob Ippolito的Authorization library,但它已经相当过时,并且与雪豹(osx10.6.4/python2.6.4)存在兼容性问题。在

我的解决方法是创建一个Objective-C启动器,它以管理权限运行python应用程序,但感觉相当混乱。在

谢谢你的帮助!在


Tags: 方法用户api应用程序librarywxpythongui控件
3条回答

如果您只需要运行一个shell命令,请求提升的权限,则可以执行以下操作:

os.system("""osascript -e 'do shell script "<commands go here>" " with administrator privileges'""")

它将在applescript解释器中运行一个shell命令,并提示用户输入其帐户凭据;使用sudo有效地运行该命令。在

请注意,在命令中转义引号会很有趣,例如

^{pr2}$

希望有帮助!在

您可以使用Platypus将整个脚本转换为本机macosx应用程序,从而以管理员权限运行整个脚本。在

相关问题 更多 >