求解GTK库的关机问题
- lovekid
- 帖子: 555
- 注册时间: 2007-03-05 11:43
- 联系:
求解GTK库的关机问题
大家好,我以前曾提过一个类似的问题,不过没有很好的答案,今天再问一次,这么长时间过去了,应该有解了~~~
问题是这样的,使用GTK库的程序怎样才能通过编程的方式关闭计算机?
咱们的ubuntu默认使用gnome,不用提权就能关机、重启。但是在shell中要想关机、重启则必须提权,使用root权限。在windows系统中,有个ExitWindowsEx函数,这个函数虽然需要提权,可也不需要进程以管理员身份运行。
但ubuntu下,普通用户死活不让关机,可桌面版操作系统又不是服务器,怎能不让普通用户关机?但咱们以普通用户登录后,通过gnome的关机菜单又可以关机,我想知道gnome是怎么关机的,到底该调用什么函数才能关机?就算是办不到,谁能解释一下gnome桌面系统的关机机制?
希望有人能给我解答一下,不要让我去看什么技术文档,谢谢了,不懂的帮我顶也算帮我了,再次感谢
问题是这样的,使用GTK库的程序怎样才能通过编程的方式关闭计算机?
咱们的ubuntu默认使用gnome,不用提权就能关机、重启。但是在shell中要想关机、重启则必须提权,使用root权限。在windows系统中,有个ExitWindowsEx函数,这个函数虽然需要提权,可也不需要进程以管理员身份运行。
但ubuntu下,普通用户死活不让关机,可桌面版操作系统又不是服务器,怎能不让普通用户关机?但咱们以普通用户登录后,通过gnome的关机菜单又可以关机,我想知道gnome是怎么关机的,到底该调用什么函数才能关机?就算是办不到,谁能解释一下gnome桌面系统的关机机制?
希望有人能给我解答一下,不要让我去看什么技术文档,谢谢了,不懂的帮我顶也算帮我了,再次感谢
- slax
- 帖子: 1099
- 注册时间: 2009-08-17 3:52
Re: 求解GTK库的关机问题
危险,所以不告诉你。
We believe that the internet should be public, open and accessible.
软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。
iceplayer! linux音乐新体验~ 最新版本4.0.5-20110520已更新!viewtopic.php?f=137&t=252461
想要iceplayer 测试版麼?加入QQ群80071264吧,在code.google也可找到
http://www.iceplayer.org/
http://jasy.ice.blog.163.com/
软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。
iceplayer! linux音乐新体验~ 最新版本4.0.5-20110520已更新!viewtopic.php?f=137&t=252461
想要iceplayer 测试版麼?加入QQ群80071264吧,在code.google也可找到
http://www.iceplayer.org/
http://jasy.ice.blog.163.com/
- lovekid
- 帖子: 555
- 注册时间: 2007-03-05 11:43
- 联系:
Re: 求解GTK库的关机问题
我拿来写闹钟程序的,
以后下载软件的完成后关机也得用啊
告诉我吧
以后下载软件的完成后关机也得用啊
告诉我吧
-
- 帖子: 18311
- 注册时间: 2008-01-09 22:41
Re: 求解GTK库的关机问题
gdm就是以root权限运行的
所以可以关机
ps:个人理解……gdm对于一般用户的审查,是基于自身的。也就是说你突破gdm审查机制,你就可以达到root权限
所以可以关机
ps:个人理解……gdm对于一般用户的审查,是基于自身的。也就是说你突破gdm审查机制,你就可以达到root权限
- lovekid
- 帖子: 555
- 注册时间: 2007-03-05 11:43
- 联系:
Re: 求解GTK库的关机问题
能说的再详细些吗? ExitWindowsEx在NT下是要审查的,不过一般都过,gdm怎么个审查法?
-
- 帖子: 18311
- 注册时间: 2008-01-09 22:41
Re: 求解GTK库的关机问题
我在win下编程水平也就停留在吊api,llinux下嘛,还是printflovekid 写了:能说的再详细些吗? ExitWindowsEx在NT下是要审查的,不过一般都过,gdm怎么个审查法?
不过读代码还是会一点的
- lilydjwg
- 论坛版主
- 帖子: 4249
- 注册时间: 2009-04-11 23:46
- 系统: Arch Linux
- 联系:
Re: 求解GTK库的关机问题
把你的程序的所有者改成root,然后设置用户ID。
这样程序就具有root权限了(小心!)
http://www.diybl.com/course/6_system/li ... 59757.html
代码: 全选
chmod 4755 yourfile
http://www.diybl.com/course/6_system/li ... 59757.html
- wangdu2002
- 帖子: 13284
- 注册时间: 2008-12-13 19:39
- 来自: 物华天宝人杰地灵
- lovekid
- 帖子: 555
- 注册时间: 2007-03-05 11:43
- 联系:
Re: 求解GTK库的关机问题
这样的话安装程序不就麻烦了?别人要用都得设置?打包技术还不会……难道就没有普通用户能调用的关机函数吗?gnome明明能关机……lilydjwg 写了:把你的程序的所有者改成root,然后设置用户ID。这样程序就具有root权限了(小心!)代码: 全选
chmod 4755 yourfile
http://www.diybl.com/course/6_system/li ... 59757.html
难道gnome也是这么办的
- lilydjwg
- 论坛版主
- 帖子: 4249
- 注册时间: 2009-04-11 23:46
- 系统: Arch Linux
- 联系:
Re: 求解GTK库的关机问题
gnome应该是用root的权限关机的,那有个gdm进程是root的lovekid 写了:这样的话安装程序不就麻烦了?别人要用都得设置?打包技术还不会……难道就没有普通用户能调用的关机函数吗?gnome明明能关机……lilydjwg 写了:把你的程序的所有者改成root,然后设置用户ID。
....
难道gnome也是这么办的
- windwiny
- 帖子: 2254
- 注册时间: 2007-03-13 17:26
Re: 求解GTK库的关机问题
gnome策略里有关机的权限设置吧
某设置了权限的用户发关机dbus 消息给daemon
某设置了权限的用户发关机dbus 消息给daemon
- soething
- 帖子: 746
- 注册时间: 2008-07-23 19:06
- lovekid
- 帖子: 555
- 注册时间: 2007-03-05 11:43
- 联系:
Re: 求解GTK库的关机问题
这个小面板的全称是什么?soething 写了:通过dbus。
可以参见下ubuntu的那个面板小工具。
能否给点示例代码
- cnkilior
- 论坛版主
- 帖子: 4984
- 注册时间: 2007-08-05 17:40
Re: 求解GTK库的关机问题
你可以看看gshutdown的代码/
-
- 帖子: 18311
- 注册时间: 2008-01-09 22:41
Re: 求解GTK库的关机问题
晕,某次很2
kill 掉了dbus-daemon
kill 掉了dbus-daemon