首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >检查是否安装了PDF QDesktopServices::openUrl()

检查是否安装了PDF QDesktopServices::openUrl()
EN

Stack Overflow用户
提问于 2015-01-28 02:39:29
回答 1查看 460关注 0票数 1

我想检查一下,是否安装了pdf阅读器。这个想法是使用QDesktopServices::openUrl("path/test.pdf"),如果它返回“假”,我知道没有安装pdf阅读器。问题是,如果安装了pdf阅读器,它就会打开pdf。我能“禁用”那个吗?

/edit:我的解决方案:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
QSettings settings("HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\FileExts\\.pdf\\OpenWithProgids", QSettings::NativeFormat);
 if (settings.allKeys().size() == 0) {...}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-01-28 03:03:35

我能“禁用”那个吗?

简单的回答-不。

当QDesktopServices::openUrl要求系统使用相关程序打开文件时,您不能通过Qt禁用它。

虽然不推荐,但您可以在每个平台的基础上禁用它,但是如果您要沿着这条路线前进,我建议使用每个平台的特性来检查是否有一个与pdf数据文件相关的应用程序。

在Windows上,它存储在注册表中,而OS使用LaunchServices

但是,仅仅因为不存在文件关联,并不意味着没有安装合适的应用程序来打开pdf。

如果您想要能够显示一个pdf,您可能会更好地处理直接在您的程序。您可以阅读有关该这里的一些选项。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28190125

复制
相关文章
「技术架构」TOGAF建模:环境和位置图
环境和位置图描述了哪些位置承载哪些应用程序,确定了哪些位置使用了哪些技术和/或应用程序,最后确定了业务用户通常与应用程序交互的位置。该图还应该显示不同部署环境的存在和位置,包括非生产环境,例如开发和预生产环境。
架构师研究会
2020/11/06
5770
「技术架构」TOGAF建模:环境和位置图
.Net Web开发技术栈
有很多朋友有的因为兴趣,有的因为生计而走向了.Net中,有很多朋友想学,但是又不知道怎么学,学什么,怎么系统的学,为此我以我微薄之力总结归纳写了一篇.Net web开发技术栈,以此帮助那些想学,却不知从何起的朋友。
小曾看世界
2018/08/03
4.9K0
java栈的实现_java技术栈
学习自:http://www.cnblogs.com/skywang12345/p/3562239.html
全栈程序员站长
2022/10/03
3680
java cas原理 CAP技术_fpga和java哪个好
(1)在多线程竞争下,加锁、释放锁会导致比较多的上下文切换和调度延时,引起性能问题。
全栈程序员站长
2022/11/03
8140
在.NET平台上运行Java程序-IKVM.NET入门
一、介绍 IKVM.NET是一个针对Mono和微软.net框架的java实现,其设计目的是在.NET平台上运行java程序。它包含了以下的组建: * 一个用.NET实现的java虚拟机 * 一个java类库的.NET实现 * 致力于在java和.NET之间交互的工具 二、IKVM.NET的组件 IKVM.NET包含以下的部分: * IKVM.Runtime.dll: VM运行时和所有支持代码。它包括以下的功能:    Byte Code JIT 编译器和验证器: 使用JIT将Java Byte C
张善友
2018/01/22
2.4K0
大数据平台技术栈
Flume是一个分布式的高可用的数据收集、聚集和移动的工具。通常用于从其他系统搜集数据,如web服务器产生的日志,通过Flume将日志写入到Hadoop的HDFS中。
物流IT圈
2019/07/16
2.2K0
大数据平台技术栈
java和前端哪个好学_java和前端哪个难学?「建议收藏」
问Java 和 前端哪个难学, 就像在问牛排和中餐哪个好吃一样。Java 是门编程语言,前端是一个领域不能相比较。
全栈程序员站长
2022/09/08
1.1K0
java和前端哪个好学_java和前端哪个难学?「建议收藏」
java三大平台介绍,选择哪个平台学习java编程?
🤟 博主介绍: CSDN、头条、知乎等平台优质博主,全网粉丝2w+ ----   眼见为实,前面的文章洋洋洒洒几千字介绍了JAVA的历史和学习方法,但是都只是在字面上,我们也没有看到一个真正的JAVA
IT学习日记
2022/09/13
9280
java三大平台介绍,选择哪个平台学习java编程?
java和c语言哪个简单_Java编程和C语言哪个好学
学哪种编程语言好?计算机编程语言非常多,诸如Java、C、C++、PHP等,很多人在选择的时候都会觉得头大。到底学哪种编程语言好?
全栈程序员站长
2022/09/08
2.3K0
java和c语言哪个简单_Java编程和C语言哪个好学
java与php哪个好_java和php哪个是主流
首先介绍一下我自己,一直在从事教育行业,有十几年的IT培训经验,从干这行起一直到现在,总会有人问你:服务器端开发是学php好还是java好,如果你告诉她(他)学习php好,他(她)会反问,听说php只能做服务器开发,java啥都能做,你告诉她java好,他(她)会反问,听说java挺难的,php入门简单,上手快!,擦!你都知道干嘛问我!心中顿时有一万头神兽滚滚而过!
全栈程序员站长
2022/09/20
6.7K0
Java和Python哪个更好?
大家好,又见面了,我是你们的朋友全栈君。 一些开发人员声称Python比Java更有效率。但这应该先弄清Python和Java之间的区别是什么? Java和Python的区别 Java是一种严格的类型
全栈程序员站长
2022/09/08
4140
java python哪个好_java和python哪个更好用?(一)[通俗易懂]
Java是世界上最古老,功能最强大的编程语言之一。它是一种通用的静态类型的语言。这意味着任何人都可以使用它。使用此编程语言没有特定的目的。
全栈程序员站长
2022/09/08
6.6K0
学科知识图谱学习平台项目 :技术栈Java、Neo4j、MySQL等超详细教学
Java(TM) SE Runtime Environment (build 17.0.1+12-LTS-39)
汀丶人工智能
2023/07/14
3020
学科知识图谱学习平台项目 :技术栈Java、Neo4j、MySQL等超详细教学
网站全栈开发,Java跟PHP选择哪个好些?
先说全栈。Java, PHP这两门语言,都是构建后台程序的。比如处理请求,路由,验证,持久化,返回数据。
程序员小助手
2020/04/08
1.4K0
「技术架构」TOGAF建模:处理图/部署图
处理图着重于可部署的代码/配置单元,以及如何将它们部署到技术平台上。部署单元表示业务功能、服务或应用程序组件的分组。处理图解决了以下问题:
架构师研究会
2020/11/06
8570
「技术架构」TOGAF建模:处理图/部署图
「企业架构」TOGAF的权威指南
TOGAF(开放式集团架构框架)已经被企业架构师(EAs)用作规划IT开发策略的通用语言超过25年了。该计划于1995年成立,目的是协助企业和企业架构师以有组织的方式协调跨部门项目,以促进主要业务目标的实现。特别地,根据Open Group architecture Forum, TOGAF®的基本目标是通过以下方式支持关键业务需求:
架构师研究会
2020/09/25
2K0
Spark 和 Flink之争,阿里、滴滴等技术大牛揭秘:你的项目该用哪个?
做大数据绝对躲不过的一个热门话题就是实时流计算,而提到实时流计算,就是Spark 和 Flink两面大旗。
养码场
2018/08/10
1.3K0
AMF: ASP.NET Mobile Framework
ASP.NET移动框架(AMF)是一种最常用的平板电脑和智能手机上Web应用程序的框架,基于jQuery Mobile(http://jquerymobile.com)的asp.net 开源项目,项目地址是http://amf.codeplex.com/,最新发布的版本是0.9,对应于jquerymobile 的beta2,codeproject上有篇详细介绍的文章 http://www.codeproject.com/KB/aspnet/amf.aspx 。 支持的移动平台很多: A. A-grade –
张善友
2018/01/30
9180
「技术架构」TOGAF建模:网络计算硬件图
从从大型机到客户机-服务器系统的转换开始,后来随着电子商务和J2EE的出现,大型企业主要迁移到高度基于网络的分布式网络计算环境中,该环境具有防火墙和非军事区。目前,大多数应用程序都有web前端,看看这些应用程序的部署架构,在网络环境中通常会发现三个不同的层:web表示层、业务逻辑或应用程序层和后端数据存储层。在共享的公共基础设施环境中部署和承载应用程序是一种常见的做法。因此,记录在开发和生产环境中支持应用程序的逻辑应用程序和技术组件(例如,服务器)之间的映射变得非常关键。网络计算硬件图的目的是显示分布式网络计算环境中逻辑应用程序组件的部署逻辑视图。
架构师研究会
2020/11/06
6540
「技术架构」TOGAF建模:网络计算硬件图
点击加载更多

相似问题

.net中的这个java技术栈?

45

Java /SOAP服务技术栈

56

如何确定我的平台的技术栈?

12

TOGAF ADM在每个阶段输入输出

37

跨平台技术栈:在Android和ASP.NET MVC中共享代码和数据库

14
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文