基于qt5的应用程序在windows和linux环境下修改图标及制定后缀关联

news2025/1/21 9:25:57

基于qt5的应用程序在windows和linux环境下修改图标及制定后缀关联

1、windows

1.1 修改应用程序图标

方式一:

使用qmake来生成makefile文件,只需要在.pro中添加:

RC_ICONS = logo.ico

然后,重新生成makefile文件和应用程序,对应的.exe可执行程序就被设置好图标了。(这种方法,要将logo.ico和.pro文件放到同一个文件夹下)

方式二:

1、右键项目文件夹,添加新文件,选择General->Empty File。

 

2、 将文件名命名为logo.rc,并在文件中添加如下代码:

IDI_ICON1 ICON DISCARDABLE "logo.ico"

 

3、 在.pro文件中,添加如下代码:

RC_FILE += logo.rc

至此可执行文件本身的图标就设置完成(这种方法,要将logo.ico和logo.rc两个文件与.pro文件放到同一个文件夹下)

1.2文件关联

命令行(或者以写入注册表的方式注册):

Assoc 显示或修改文件扩展名的关联

Ftype 显示或修改用在文件扩展名中的关联

assoc .eest=eestfile【取消:assoc .eest=】
ftype eestfile=C:\Windows\notepad.exe %1【取消:ftype eestfile=】

Qt 中相关命令行设置:

// 初始化文件后缀关联

QString strAssoc = "assoc .eest=eestfile";                                                      // 显示或修改文件扩展名的关联

    QString strFtype = QString("ftype eestfile=\"%1\"").arg(QApplication::applicationFilePath());   // 显示或修改用在文件扩展名中的关联

    strFtype.replace("/", "\\");

    QProcess::startDetached("cmd.exe", QStringList() << "/c" << strAssoc + "\n");

    QProcess::startDetached("cmd.exe", QStringList() << "/c" << strFtype + "%1 \n");

2、linux

2.1 修改应用程序图标

创建open_eets.desktop文件,添加以下内容并保存:

[Desktop Entry]

Name=EETS

Comment=open eets type file

Exec=/opt/apps/com.eetrust.wdaq/files/bin/SLClient/Shell/ETSMJBZUI15 %f

Icon=/opt/open_xyz/icon.png

Terminal=false

Type=Application

MimeType=application/x-eets;

Categories=GNOME;GTK;Network;RemoteAccess;

StartupNotify=true

拷贝到

chmod +x /usr/share/applications/open_eets.desktop

中。

其中: Exec 为可执行程序路径;

Icon 显示的图标路径;

MimeType 让应用程序知道它与文件关联;

赋权限:

2.2 文件关联

双击某一类型的图标,自动打开应用程序,并且显示应用程序的图标(例如后缀是eets),linux下有一个mime记录文件类型。

创建eets.xml文件,包含以下内容并保存:(这里的程序是以.eets结尾的)

<?xml version="1.0"?>

<mime-info xmlns='http://www.freedesktop.org/standards/shared-mime-info'>

  <mime-type type="application/x-eets">      

    <comment>File for YeecohReader</comment>

    <generic-icon name="application-x-eets"/>

    <glob pattern="*.eets"/>    

  </mime-type>

</mime-info>

拷贝到/usr/share/mime/packages/eets.xml中。

赋权限:

chmod +x /usr/share/mime/packages/eets.xml

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/527417.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

MySQL学习---15、流程控制、游标

1、流程控制 解决复杂问题不可能是通过一个SQL语句完成&#xff0c;我们需要执行多个SQL操作。流程控制语句的作用就是控制存储过程中SQL语句的执行顺序&#xff0c;是我们完成复杂操作必不可少的一部分。只要是执行的程序&#xff0c;流程就分为三大类&#xff1a; 1、顺序结…

MMM(Master-Master replication manager for MySQL)

MMM&#xff08;Master-Master replication manager for MySQL&#xff0c;MySQL主主复制管理器&#xff09; 是一套支持双主故障切换和双主日常管理的脚本程序。MMM 使用 Perl 语言开发&#xff0c;主要用来监控和管理 MySQL Master-Master &#xff08;双主&#xff09;复制&…

【计算机视觉】CLIP:连接文本和图像(关于CLIP的一些补充说明)

文章目录 一、前言二、背景及相关工作三、方法3.1 Costly datasets3.2 Narrow3.3 Poor real-world performance 四、要点4.1 CLIP is highly efficient4.2 CLIP is flexible and general 五、限制六、更广泛的影响七、结论 一、前言 我们推出了一个名为CLIP的神经网络&#xf…

原神服务端搭建架设教程win系统(附客户端+服务端+环境配置)

原神服务端搭建架设教程win系统(附客户端服务端环境配置) 大家好&#xff0c;我是艾西原神一款开放世界冒险3D游戏以七种元素&#xff08;分别为风、雷、岩、火、水、草、冰&#xff09;交汇的幻想世界“提瓦特”创造的游戏世界&#xff0c;以角色扮演的RPG游戏还是有非常多的玩…

Prompt工程师指南[应用篇]:Prompt应用、ChatGPT|Midjouney Prompt Engineering

Prompt工程师指南[应用篇]&#xff1a;Prompt应用、ChatGPT|Midjouney Prompt Engineering 1.ChatGPT Prompt Engineering 主题&#xff1a; 与 ChatGPT 对话 Python 笔记本 Topics: ChatGPT介绍审查对话任务与ChatGPT对话Python笔记本 ChatGPT介绍 ChatGPT是OpenAI训练的…

(数字图像处理MATLAB+Python)第七章图像锐化-第三节:高斯滤波与边缘检测

文章目录 一&#xff1a;高斯函数&#xff08;1&#xff09;定义&#xff08;2&#xff09;特点 二&#xff1a;LOG算子&#xff08;1&#xff09;定义&#xff08;2&#xff09;程序 三&#xff1a;Canny算子&#xff08;1&#xff09;最优边缘检测&#xff08;2&#xff09;C…

前端开发推荐vscode安装什么插件?

前言 可以参考一下下面我推荐的插件&#xff0c;注意&#xff1a;插件的目的是用于提高开发的效率&#xff0c;节约开发的时间&#xff0c;像类似检查一些bug、拼写错误等这些可以使用插件快速的识别&#xff0c;避免在查找错误上浪费过多的时间&#xff0c;但切记不要过度依赖…

高速电路设计阻抗匹配的几种方法

为什么要阻抗匹配? 在高速数字电路系统中&#xff0c;电路数据传输线上阻抗如果不匹配会引起数据信号反射&#xff0c;造成过冲、下冲和振铃等信号畸变&#xff0c;当然信号沿传输线传播过程当中&#xff0c;如果传输线上各处具有一致的信号传播速度&#xff0c;并且单位长度…

AVL和二叉树介绍

AVL tree介绍 AVL的全称是&#xff1a;Adelson-Velsky-Landis&#xff0c;是发明这种高度平衡二叉树的人名的缩写&#xff0c;AVL tree是一种优化了的搜索二叉树。 这是二叉排序树会存在的一个问题&#xff0c;先看案例: 给定一个数列为{1,2,3,4,5,6}&#xff0c;将这个数列…

【Blender】学习一下

简介Download使用教程入门常识界面简介编辑器视图Layout游标对物体的操作 实战案例1. 萌三兄弟——建模、渲染2. 积木组合——建模、渲染、动画制作3. 金币基站——建模、渲染4. 狂奔的小车——建模、渲染、动画5. 荧光树桩——雕刻、建模、渲染6. 子弹冲击——建模、渲染、动画…

Hum Brain Mapp | 联合连接矩阵独立成分分析:结构和功能连接的自动链接

导读 对人类大脑连接的研究&#xff0c;包括结构连接(SC)和功能连接(FC)&#xff0c;这些方面的研究有助于深入了解大脑功能的神经生理机制及其与人类行为和认知的关系。这两种类型的连接测量都提供了重要且互补的信息。然而&#xff0c;将这两种模式整合到一个单一的框架中仍…

AutoCV番外:Transformer

目录 Transformer前言1. Self-attention1.1 前置知识1.2 Self-attention机制1.3 矩阵乘法角度理解1.4 Multi-head Self-attention1.5 Positional Encoding1.6 Many application 2. Transformer2.1 前置知识2.2 Encoder2.3 AT Decoder2.4 NAT Decoder2.5 Cross attention2.6 Tra…

如何区分比特率、波特率和频谱带宽?

01、什么是比特率和波特率&#xff1f; 宽带网络里面提及的千兆即1000Mbit/s&#xff0c;一般描述的是我们家网络端口每秒最大可接收0、1比特&#xff08;bit&#xff09;的数量&#xff0c;即每秒可接收1000x106个比特。显而易见&#xff0c;比特率越高&#xff0c;每秒传送的…

利用resnet50模型实现车牌识别(Python代码,.ipynb和.py两种文件保存都有,可以使用jupyter或pycharm运行)

1.代码的主要流程如下&#xff1a; 导入所需的库和模块。对数据集进行可视化&#xff0c;随机选择一些图像进行展示。加载图像数据集&#xff0c;并将图像和标签存储在数组中。对标签进行独热编码。划分训练集和测试集。使用图像数据增强技术增加训练数据的多样性。定义一些评…

让ChatGPT成为全科医生的智能助理

医生问诊 医疗健康是所有人都关心的话题。涉及医疗健康领域的信息化事件&#xff0c;无论是搜索引擎推荐和广告信息&#xff0c;还是互联网挂号&#xff0c;或者电子商务在线买药&#xff0c;经常能引发社会性讨论。有了 ChatGPT&#xff0c;我们自然也会期待在医疗健康领域&a…

从零开始学习JVM(一)--初识Java虚拟机

1 虚拟机与Java虚拟机 1.1 基本介绍 所谓虚拟机&#xff08;Virtual Machine&#xff09;。就是一台虚拟的计算机。它是一款软件&#xff0c;用来执行一系列虚拟计算机指令。大体上&#xff0c;虚拟机可以分为系统虚拟机和程序虚拟机。 系统虚拟机&#xff1a;完全对物理计算…

(赠书活动第1期) Java 8 已无法满足需求?升级到 Java 17 让你体验酣畅淋漓的编程!

Java 8 已无法满足需求&#xff1f;升级到 Java 17 让你体验酣畅淋漓的编程&#xff01; Java 17 的新特性如何升级到 Java 17❤️‍&#x1f525; 本期赠书三本《JAVA核心技术 卷2》 Java 8 是一个历史悠久的版本&#xff0c;自推出以来一直被广泛使用。但是随着时间的推移和技…

四举措实现数电票对企业经营的改善

数电票不仅是征管需求&#xff0c;也是企业业务的需求。 2021年3月&#xff0c;中共中央办公厅、国务院办公厅印发的《关于进一步深化税收征管改革的意见》&#xff08;以下简称《意见》&#xff09;提出&#xff0c;要全面推进税收征管数字化升级和智能化改造&#xff0c;把智…

Spark大数据处理讲课笔记4.2 Spark SQL数据源 - 基本操作

文章目录 零、本讲学习目标一、基本操作二、默认数据源&#xff08;一&#xff09;默认数据源Parquet&#xff08;二&#xff09;案例演示读取Parquet文件1、在Spark Shell中演示2、通过Scala程序演示 三、手动指定数据源&#xff08;一&#xff09;format()与option()方法概述…

解密Netty中的Reactor模式

文章目录 单线程Reactor模式多线程Reactor模式Reactor模式中IO事件的处理流程Netty中的通道ChannelNetty中的反应器ReactorNetty中的处理器HandlerNetty中的通道Channel和处理器Handler的协作组件Pipeline Reactor(反应器)模式是高性能网络编程在设计和架构方面的基础模式.Doug…