是否可以以管理员身份在Vista中以编程方式运行已编译的Python(通过py2exe编译)?
需要更多说明: 我编写了一个程序,可以在Vista中修改Windows主机文件(c:\ Windows \ system32 \ drivers \ etc \ hosts),除非您右键单击并以即使在用户具有管理员权限的情况下也可以成为管理员,这与XP在用户具有管理权限的情况下将在XP中运行不同,因此我需要一种方法以编程方式将其提升为正确的权限。
您是说要Windows在运行程序时提示您提升权限吗?通过将UAC清单添加到EXE的资源来控制。此博客条目说明了如何创建清单以及如何将清单编译为.RES文件。
我不知道py2exe具有用于嵌入自定义.RES文件的功能,因此您可能需要使用Platform SDK中的MT.EXE工具将清单嵌入程序中。MT.EXE不需要.RES文件;它可以直接合并.manifest文件。