【C++】Win10设置默认程序
最近测试反馈Win10设置我们的应用不正常,经google查询,由于Win10设置了hash校验设置的ProgId值,如果hash正确才能正常启动,所以我们必须得调用Win8/Win10 Api去正确设置。
举例:
#include <ShObjIdl.h>bool SetDefaultClient(wchar_t* pClientName)
{IApplicationAssociationRegistration* pARR;HRESULT hr = CoCreateInstance(CLSID_ApplicationAssociationRegistration, NULL, CLSCTX_INPROC, __uuidof(IApplicationAssociationRegistration), (void**)&pARR);if (SUCCEEDED(rv)){BOOL bIsDefaultClient = FALSE;hr = pAAR->QueryAppIsDefault(L"http", AT_URLPROTOCOL, AL_EFFECTIVE, pClientName, &bIsDefaultClient);if (FAILED(hr) || bIsDefaultClient == FALSE){hr = pAAR->SetAppAsDefault(pClientName, L"http", AT_URLPROTOCOL);}pAAR->Release();}return SUCCEEDED(hr);
}
要注意的是,若API返回成功,在默认程序中不一定看到是你设置的App,因为写的注册表不一定为CURRENTUSER,但是功能是正常的。
参考:如何绕过Win8、Win10的systemsetting与注册表校验设置默认浏览器
【C++】Win10设置默认程序相关推荐
- win10.java默认程序_Win10把IE修改为默认浏览器的两种方法
IE浏览器一直是Windows系统的默认浏览器,似乎从使用微软开始,就已经是这样了.但是在最新的Win10系统中,IE已经不是Win10的默认浏览器了.那么怎么把IE修改为Win10默认浏览器?本文就 ...
- win10设置默认打开方式
layout: post title: win10设置默认打开方式 date: 2018-12-29 9:10:50 group: tags: win10设置默认打开方式 我们有的软件只显示了一个文件 ...
- 程序代码初学者_初学者极客:在Windows 7和Vista中设置默认程序
程序代码初学者 If you've ever installed a program and suddenly found certain file types opening with it ins ...
- win10设置默认输入法_个性化设置技巧
个性化设置技巧 子墨居士前言本次内容主要是win10系统自带的功能,不是用第三方软件优化桌面的情况下,让自己的电脑桌面能更美观.更舒服.系统自身的个性化设置主要是下图中的几个.鼠标右击->个性化 ...
- 解决win7设置默认程序打开方式失效
问题描述 我在设置一个文件(.ui)的默认程序打开,总是失效.设置不成功. 原因 正常这个程序应该用 designer.exe 打开,但是我之前设置过(.ui)默认程序打开程序为designer.ex ...
- android设置默认程序和清除默认设置
以设置和清除默认浏览器为例. 1.检查是否已经设置了默认 [java] view plain copy private void testGetDefaultActivity() { Package ...
- android设置默认程序清除默认设置
以设置和清除默认浏览器为例. 1.检查是否已经设置了默认 private void testGetDefaultActivity() {PackageManager pm = getPackageMa ...
- win10设置默认输入法,无法保存
新装 win10 系统,设置默认输入法,重启后不是原来的模型,可通过以下步骤设置. setp: 1 setp: 2 setp: 3 setp: 4 转载于:https://www.cnblogs.co ...
- win10设置Python程序定时运行(设置计划任务)
楼主最近写了一个简单的Python程序,想让这个小程序每天上午8点定时运行一次,因为我的电脑是Windows系统,无法使用Linux下强大的crontab命令,所以我只好求助于度娘.我搜到了好几个相关 ...
最新文章
- 查看Linux内核版本的命令
- 什么是O/RMapping?为什么要用O/R Mapping?
- boost::graph模块实现双连通分量算法的测试程序
- go 调用其他文件函数_一文读懂Go中软件包概念
- oldboy_09_03day
- android defStyleAttr/defStyleRes
- Delphi-如何声明一个结构
- linux tar zcfp 打包,tar命令_Study-Everyday的技术博客_51CTO博客
- POJ1050-To the Max
- python列表输出字符串,如何在python中输出utf-8字符串列表?
- 苹果电脑如何读写ntfs格式磁盘
- verilog 中if....else语句以及case语句详细理解
- 141.3. 单机安装 CentOS 5 + hadoop-0.20.0
- matlab给图片滤波,matlab每日学习 图片滤波
- HDU2544:最短路(Dijkstra)
- java里什么是索引_面试官:什么是索引?
- 数据库查询的降序排列
- 8.3 案例实现(加载数据库sakila中的数据至数据仓库sakila_dw)
- java斗地主发牌_实现斗地主发牌(java)
- linux设置定时关机及取消
热门文章
- Matplot X轴,Y轴最大值限定(固定X轴、Y轴的范围)
- 关于科技趋势和未来机会,这8本书告诉你答案
- python用双重循环输出菱形_Python 使用双重循环打印图形菱形操作
- 【外挂逆向】《某涯明月刀》BUFF及技能预判
- lol服务器维护2021,lol维护公告最新时间2021.5.27 lol维护到几点
- ipcalc命令 – 简单的IP地址计算器
- 一个对付小孩便秘的指南,让麻麻不再当催屎员
- “裸辞” 备战15天三面美团,交叉面却被吊起来锤
- ISCC2021 wp
- 一切恍如昨日,却又截然不同...