社区
Qt
帖子详情
请教:Qt4.8如何调用外部需要root权限的程序,大牛速来!!
shen_wei
2012-03-30 04:44:41
1.root编译的驱动程序 A,imsmod 加载进去。
2.通过测试工具B,root测试,一切正常,用户测试不能读取内容。
3.现在有QWidget 界面程序C,
通过B的参数来获取系统信息,初始化界面程序C。也就是说在启动C时,就执行来B。
如何在C执行时,获取到系统信息哪??也就是第二步内容(root获取信息)。
简单来说:如何才能让通过qtcreator编译的程序具有root权限呢???
让程序以 root权限执行!!!
...全文
358
15
打赏
收藏
请教:Qt4.8如何调用外部需要root权限的程序,大牛速来!!
1.root编译的驱动程序 A,imsmod 加载进去。 2.通过测试工具B,root测试,一切正常,用户测试不能读取内容。 3.现在有QWidget 界面程序C, 通过B的参数来获取系统信息,初始化界面程序C。也就是说在启动C时,就执行来B。 如何在C执行时,获取到系统信息哪??也就是第二步内容(root获取信息)。 简单来说:如何才能让通过qtcreator编译的程序具有root权限呢??? 让程序以 root权限执行!!!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
15 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
shen_wei
2012-03-31
打赏
举报
回复
[Quote=引用 14 楼 的回复:]
引用 13 楼 的回复:
yiyaaixuexi
谢谢美女的详细解释。。。刚接触Qt编程。。还有很多东西要学习!!
注意到你的网名叫hacker
[/Quote]
这个怎么了。。。名称而已。。。呵呵呵
xiachm
2012-03-31
打赏
举报
回复
[Quote=引用 13 楼 的回复:]
yiyaaixuexi
谢谢美女的详细解释。。。刚接触Qt编程。。还有很多东西要学习!!
[/Quote]注意到你的网名叫hacker
shen_wei
2012-03-31
打赏
举报
回复
yiyaaixuexi
谢谢美女的详细解释。。。刚接触Qt编程。。还有很多东西要学习!!
念茜
2012-03-31
打赏
举报
回复
简单来说:如何才能让通过qtcreator编译的程序具有root权限呢???
让程序以 root权限执行!!!
你误解了权限的概念。
“具有root权限” 是指
用户
,当前用户是否具有root权限,还是只有user权限,而并非是说一个可执行应用程序。 你 ll hello 察看应用程序,比如得到:-rwxrwxr-x 可以看到不同
用户
对文件的读写执行 权限限定。
你若想不让user用户执行你的程序,即可用chmod命令。
你若想提升当前用户的操作权限,就是从user到root,那么切换用户或者sudo。
至于前面有人提到setuid(0)来提升当前权限这个办法,也必须是root用户下,执行这个命令才有效的。
如果你是做嵌入式linux应用程序,就是说将来要移植给板子的,除非大型项目,一般都是一个root单用户,你也就不用考虑这些,看你具体情况。
还是那句话,在UBuntu的本地测试,你要理清概念,“具有root权限”是指用户,而不是程序。
shen_wei
2012-03-31
打赏
举报
回复
[Quote=引用 8 楼 的回复:]
我不知道LZ的嵌入式设备上运行的是何种Linux。不过有个setuid的函数的功能或许你可以参考一下。
[/Quote]
现在是 ubuntu10.04 的系统。。。
shen_wei
2012-03-31
打赏
举报
回复
[Quote=引用 7 楼 的回复:]
还有一个方法,把你需要启动的那个程序做成守护进程,然后和你的程序进行进程间通讯。
[/Quote]
这个怎么做??能否详细解答。。。
ywergs
2012-03-31
打赏
举报
回复
我不知道LZ的嵌入式设备上运行的是何种Linux。不过有个setuid的函数的功能或许你可以参考一下。
xiachm
2012-03-30
打赏
举报
回复
还有一个方法,把你需要启动的那个程序做成守护进程,然后和你的程序进行进程间通讯。
shen_wei
2012-03-30
打赏
举报
回复
那是自然啊 不过移植,也得需要linux环境支持的。。。刚接触这个。。。有很多东西要学习的!!!
xiachm
2012-03-30
打赏
举报
回复
这与Qt一点关系也没有,这是Linux的特性,执行权限和程序的移植也没有关系。
楼主还是了解些Linux的知识吧。
shen_wei
2012-03-30
打赏
举报
回复
[Quote=引用 3 楼 xiachm 的回复:]
那你以root身份登录Linux,问题不就都解决了吗!
[/Quote]
这个是可以解决。。但是这样也不是太好吧。。。不知道移植时会咋样。。。
也就是移植到平台上会有什么问题,还不太会移植!!初学QT。。
xiachm
2012-03-30
打赏
举报
回复
那你以root身份登录Linux,问题不就都解决了吗!
shen_wei
2012-03-30
打赏
举报
回复
[Quote=引用 1 楼 的回复:]
这个问题已经在另一个帖子里给你回答了,让你的程序使用gksu启动,试一下吧
[/Quote]
这个不可能的。。因为要作嵌入式的程序。。在嵌入式如何输入???这个是个问题
xiachm
2012-03-30
打赏
举报
回复
这个问题已经在另一个帖子里给你回答了,让你的程序使用gksu启动,试一下吧
Qt高级系列之8:Qt多线程线程池数据同步机制及文件下载器项目实战
1.带领您深入学习QT5/C++:Qt多线程线程池及数据同步机制 ,多线程文件下载器项目实战,继承自QThread,继承自QObject,QRunnable和QThreadPool,QtConcurrent,Qt多线程技术与数据加锁保护机制:QMutex,QSemaphore...
Qt4
.8使用QtQuick开发桌面应用
程序
最近用Qt5.0和ubuntu-ui-toolkit来写个类似360的系统助手,这两样东西不太成熟,用起来实在是痛苦,只好重新回归到
Qt4
.8,这里介绍如何利用
Qt4
.8和qt component desktop在Ubuntu下来进行开发,希望对大家有帮助。...
inux(debian) arm-linux-g++ v4.5.1交叉编译 embedded arm 版本的QtWebkit (browser) 使用qt 4.8.6 版本
arm-linux-g++ v4.5.1交叉编译 embedded arm 版本的QtWebkit (browser) 使用qt 4.8.6 版本 http://www.cnblogs.com/bleachli/p/4759587.html 最近
需要
做一个项目 在arm 架构的linux下 没有桌面环境的...
qtcreator在linux配置编译,小白的Qt自学(5) QtCreator 安装 配置 运行 编译
在我自己用VS2008做QT项目的时候发现了一个重大问题,解决起来很是繁琐,就是在移植性上真的是吃了苦头,QT讲究一次编写,处处得用,但是在Windows的VS2008上编写QT
程序
真是让我吃了大亏了。。。首先说明下Windows的...
MX6Q移植QT5.9.1
MX6Q移植QT5.9.1由于开发
需要
支持qml,按照网上指导,QT必须先支持opengl,在此之前尝试过gcc 4.2/4.4/4.6/4.9和qt5.6/5.8版本,均不能正确配置并支持opengl,本文绕过了众多陷阱,选择了gcc4.8.1版本(网上仅CSDN能...
Qt
16,216
社区成员
26,595
社区内容
发帖
与我相关
我的任务
Qt
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
复制链接
扫一扫
分享
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章