[Freezing/Lagging] dde-lock -l &加了取地址符以后,很大概率会导致系统卡死
Tofloor
poster avatar
plg983786168
deepin
2021-12-17 17:34
Author

最近在做uos系统适配的相关的工作,涉及到系统锁屏,发现

dde-lock -l &加了取地址符以后,很大概率会导致系统卡死

单纯执行dde-lock -l后却没有类似的问题。

我的业务需要用system函数调用dde-lock锁屏,并接受system的返回值,判断结果。

十几天了,试了多种方法都不可以,特来社区咨询相关的问题。

还有uos20系统有些锁屏命令是dde-lock,有些却是dde-lock -l,怎么做到统一啊?

Reply Favorite View the author
All Replies
justforlxz
deepin
2021-12-17 17:50
#1

如果想要调用锁屏,可以走 dbus 接口。

qdbus --literal com.deepin.dde.lockFront /com/deepin/dde/lockFront com.deepin.dde.lockFront.Show

你可以根据 service path 和interface来用库去调用。

检查方法可以在这个dbus上。

qdbus --literal com.deepin.SessionManager /com/deepin/SessionManager com.deepin.SessionManager.Locked

Reply View the author
plg983786168
deepin
2021-12-17 18:18
#2
justforlxz

如果想要调用锁屏,可以走 dbus 接口。

qdbus --literal com.deepin.dde.lockFront /com/deepin/dde/lockFront com.deepin.dde.lockFront.Show

你可以根据 service path 和interface来用库去调用。

检查方法可以在这个dbus上。

qdbus --literal com.deepin.SessionManager /com/deepin/SessionManager com.deepin.SessionManager.Locked

这么长的命令,可以用C语言的system函数调用吗?

Reply View the author
enforcee
deepin
2021-12-18 02:36
#3
plg983786168

这么长的命令,可以用C语言的system函数调用吗?

d-bus的参考实现就是C语言写的,其他的各种语言都有

https://www.freedesktop.org/wiki/Software/dbus/

Reply View the author