Linux - 根据进程号获取程序图标

参考:https://github.com/linuxdeepin/deepin-system-monitor/blob/117a3b90cb02ecca4990f2136400147c59801dc5/src/utils.cpp#L379

读取 /proc/pid/environ 文件,获取 GIO_LAUNCHED_DESKTOP_FILE 字段值(desktop路径),读desktop文件,获取icon字段值(icon路径),获取图标。

注意:environ 中的字段是以 \0 分隔的。

int pid;
// 获取pid ...
QString desktop_file_path = "";
QFile file("/proc/" + QString::number(pid) + "/environ");
file.open(QIODevice::ReadOnly);
QByteArray BA = file.readAll();
file.close();
QList list_BA = BA.split('\0');
for(int i=0; i

 

你可能感兴趣的:(linux,Qt)