社区
C++ Builder
帖子详情
怎么设置一个文件的默认打开方式。(在程序中实现)
frankxht
2003-03-26 11:34:40
是向注册表里写什么东东?
...全文
2320
6
打赏
收藏
怎么设置一个文件的默认打开方式。(在程序中实现)
是向注册表里写什么东东?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
xuv2002
2003-03-31
打赏
举报
回复
我以.txt文件为例
用regedit.exe打开注册表
到HKEY_CLASSES_ROOT主键
它下面有一长串的".*"的键值
找到.txt
它有默认值为"txtfile"
再在HKEY_CLASSES_ROOT下面搜索名为"txtfile"的主键
找到了
它有子键"DefaultIcon" 默认值为"%SystemRoot%\system32\shell32.dll,-152"
意思是文件的默认图标从shell32.dll 得来 -152为图标序号
另一子键"shell" 这个是关键了
"Shell"键下面有
"open"子键: 里面有“command” 子键其默认值就是对.txt文件的默认打开方式
值为%SystemRoot%\system32\NOTEPAD.EXE %1
另外"open"下面还有"print" 子键,就是打印的操作方式了
这样应该很清楚啦吧
xuv2002
2003-03-26
打赏
举报
回复
手动改就用google 去改吧
其实我给你的函数已经很清楚了
你随便建一个工程
然后执行一下函数不就可以了
例如txt的默认操作
RegisterExt(".txt","Text files","C:\\Winnt\\notpad.exe");
frankxht
2003-03-26
打赏
举报
回复
要手动改注册表呢?怎么改?
xuv2002
2003-03-26
打赏
举报
回复
给你一个例子吧
ext 是你要注册的文件后缀名,desc 是 描述 exe 是你默认打开的执行程序的文件名
如
RegisterExt(".txt;.tixt","My Text",Application->ExeName.c_str());
ext 可以用';'隔开多个注册
bool RegisterExt(const char* ext, const char* desc, const char* exe)
{
unsigned long Size = 0 ;
char buf [255] , Ext [17];
memset(Ext,17,0); memset(buf,0,255);
if (!ext || !ext[0] || !desc || !desc[0] || !exe || !exe[0]) return false;
strncpy(buf, exe, 3); buf[3] = '\0';
if (GetDriveType(buf)!=DRIVE_FIXED) return false;
TRegistry * Reg=new TRegistry();
Reg->RootKey=HKEY_CLASSES_ROOT;
while(ext) {
const char* s = strchr(ext, ';');
Size = s ? int(s-ext) : strlen(ext);
if (Size >= sizeof(Ext)) Size = sizeof(Ext) - 1;
strncpy(Ext, ext, Size);
Ext[Size] = '\0';
ext = s ? s+1 : NULL;
Size = sizeof(buf); buf[0] = '\0';
Reg->OpenKey(Ext,true);
Reg->WriteString("",desc);
Reg->CloseKey();
}
AnsiString Desc = desc;
if(!Reg->OpenKey(Desc+"\\DefaultIcon",true)){
Reg->CloseKey(); delete Reg; return false;
}
sprintf(buf,"%s,0",exe);
Reg->WriteString("",buf);
Reg->CloseKey();
if(!Reg->OpenKey(Desc+"\\Shell\\Open\\Command",true)){
Reg->CloseKey(); delete Reg; return false;
}
sprintf(buf,"%s %%1",exe);
Reg->WriteString("",buf);
Reg->CloseKey();
delete Reg; return true;
}
frankxht
2003-03-26
打赏
举报
回复
我的意思是,想在注册表里查看一下它的位置。
xuv2002
2003-03-26
打赏
举报
回复
要手动?
用资源管理器吧,很简单
点开资源管理器的文件夹选项
里面有文件类型,点开它
若要新建,点新建
输入你要注册的后缀名如".bik"
然后点高级按钮,出来一个对话框
最上边的是文件类型的描述,我写成"Bik Vedio"
里面有个操作列表框
点新建,然后在操作编辑框中输入"Open"。 注:这个是Windows对文件操作打开的默认值
然后输入你要用来打开该文件类型的程序的名称
如"c:\\bik\\binkplay.exe %1"
%1 是参数,当你打开*.bik文件时,自动将文件名当作参数传给执行文件了
这样你该明白了
呵呵
DirectX修复工具 V3.3增强 绿色版
DirectX修复工具(DirectX Repair)是一款系统级工具软件,简便易用。本
程序
为绿色版,无需安装,可直接运行。 本
程序
的主要功能是检测当前系统的DirectX状态,如果发现异常则进行修复。
程序
主要针对0xc000007b问题设计,可以完美修复该问题。本
程序
中
包含了最新版的DirectX redist(Jun2010),并且全部DX
文件
都有Microsoft的数字签名,安全放心。 本
程序
为了应对一般电脑用户的使用,采用了傻瓜式一键设计,只要点击主界面上的“检测并修复”按钮,
程序
就会自动完成校验、检测、下载、修复以及注册的全部功能,无需用户的介入,大大降低了使用难度。 本
程序
适用于多个操作系统,如Windows XP(需先安装.NET 2.0,详情请参阅“致Windows XP用户.txt”
文件
)、Windows Vista、Windows 7、Windows 8、Windows 8.1、Windows 8.1 Update、Windows 10,同时兼容32位操作系统和64位操作系统。本
程序
会根据系统的不同,自动调整任务模式,无需用户进行
设置
。 本
程序
的V3.3版分为标准版、增强版以及在线修复版。其
中
的标准版以及增强版都包含完整的DirectX组件。除此之外,增强版
中
还额外包含了c++ Redistributable Package,因此增强版不但能解决DirectX组件的问题,而且还能解决c++组件异常产生的问题。增强版适合无法自行解决c++相关问题的用户使用。在线修复版的功能与标准版相同,只是其所需的
文件
将通过Internet下载,因此大大减小了
程序
的体积。本
程序
的各个版本之间,主
程序
完全相同,只是配套使用的数据包不同。因此,当您使用标准版数据包时,
程序
将进行标准修复;当您使用增强版的数据包时,
程序
将进行增强修复;当数据包不全或没有数据包(即只有DirectX Repair.exe
程序
)时,
程序
将进行在线修复。在线修复、离线修复可自由灵活组合,充分满足不同用户的需要。 本
程序
自V2.0版起采用全新的底层
程序
架构,使用了异步多线程编程技术,使得检测、下载、修复单独进行,互不干扰,快速如飞。新
程序
更改了自我校验方式,因此使用新版本的
程序
时不会再出现自我校验失败的错误;但并非取消自我校验,因此
程序
安全性与之前版本相同,并未降低。
程序
有自动更新c++功能。由于绝大多数软件运行时需要c++的支持,并且c++的异常也会导致0xc000007b错误,因此
程序
在检测修复的同时,也会根据需要更新系统
中
的c++组件。自V3.2版本开始使用了全新的c++扩展包,可以大幅提高工业软件修复成功的概率。修复c++的功能仅限于增强版,标准版及在线修复版在系统c++异常时(非丢失时)会提示用户使用增强版进行修复。
程序
有两种窗口样式。正常模式即
默认
样式,适合绝大多数用户使用。另有一种简约模式,此时窗口将只显示最基本的内容,修复会自动进行,修复完成10秒钟后会自动退出。该窗口样式可以使修复工作变得更加简单快速,同时方便其他软件、游戏将本
程序
内嵌,即可进行无需人工参与的快速修复。开启简约模式的方法是:打开
程序
所在目录下的“Settings.ini”
文件
(如果没有可以自己创建),将其
中
的“FormStyle”一项的值改为“Simple”并保存即可。
程序
有高级筛选功能,开启该功能后用户可以自主选择要修复的
文件
,避免了其他不必要的修复工作。同时,也支持通过
文件
进行辅助筛选,只要在
程序
目录下建立“Filter.dat”
文件
,其
中
的每一行写
一个
需要修复
文件
的序号即可。该功能仅针对高级用户使用,并且必须在正常窗口模式下才有效(简约模式时无效)。 本
程序
有自动记录日志功能,可以记录每一次检测修复结果,方便在出现问题时,及时分析和查找原因,以便找到解决办法。
程序
的“选项”对话框
中
包含了4项高级功能。点击其
中
的“注册系统
文件
夹
中
所有dll
文件
”按钮可以自动注册系统
文件
夹下的所有dll
文件
。该项功能不仅能修复DirectX的问题,还可以修复系统
中
很多其他由于dll未注册而产生的问题,颇为实用。点击该按钮旁边的小箭头,还可以注册任意指定
文件
夹下的dll
文件
,方便用户对绿色版、硬盘版的
程序
组件进行注册。点击第二个按钮可以为dll
文件
的右键菜单添加“注册”和“卸载”项,方便对单独的dll
文件
进行注册。请注意,并不是所有的dll
文件
都可以通过这种方式注册。点击“DirectX版本”选项卡可以自行修改系统
中
DirectX的版本信息。点击“DirectX加速”选项卡可以控制系统
中
DirectX加速的开启与关闭。 新版
程序
集成了用户反馈
程序
,可以在用户允许的前提下发送检测修复结果。用户也可以在出现问题时通过反馈
程序
和软件作者进行交流,共同查找问题。反馈是完全自愿和匿名(如果不填写E-mail地址)的。 本
程序
的通用版基于Microsoft .NET Framework 2.0开发,对于Windows 2000、Windows XP、Windows 2003的用户需要首先安装.NET Framework 2.0或更高版本方可运行本
程序
。有关下载和安装的详细信息请参阅“致Windows XP用户.txt”
文件
。对于Windows Vista、Windows 7及后续用户,可以直接运行本
程序
。 同时鉴于Windows 8(Windows 8.1、Windows 8.1 Update)、Windows 10系统
中
默认
未包含.NET Framework 2.0,因此新版的
程序
文件
夹内将包含
一个
DirectX_Repair_win8的特别版
程序
,该
程序
功能与通用版相同,基于.NET Framework 4.0开发,可以在Windows8(Windows 8.1、Windows 8.1 Update)、Windows 10系统
中
直接运行(其他系统如果安装了.NET Framework 4.0也可以运行这个特别版的
程序
)。 本
程序
的官方博客地址为:http://blog.csdn.net/vbcom/article/details/6962388 所有的更新以及技术支持都可以到该博客上找到。
DirectX修复工具 V3.3标准 绿色版
DirectX修复工具(DirectX Repair)是一款系统级工具软件,简便易用。本
程序
为绿色版,无需安装,可直接运行。 本
程序
的主要功能是检测当前系统的DirectX状态,如果发现异常则进行修复。
程序
主要针对0xc000007b问题设计,可以完美修复该问题。本
程序
中
包含了最新版的DirectX redist(Jun2010),并且全部DX
文件
都有Microsoft的数字签名,安全放心。 本
程序
为了应对一般电脑用户的使用,采用了傻瓜式一键设计,只要点击主界面上的“检测并修复”按钮,
程序
就会自动完成校验、检测、下载、修复以及注册的全部功能,无需用户的介入,大大降低了使用难度。 本
程序
适用于多个操作系统,如Windows XP(需先安装.NET 2.0,详情请参阅“致Windows XP用户.txt”
文件
)、Windows Vista、Windows 7、Windows 8、Windows 8.1、Windows 8.1 Update、Windows 10,同时兼容32位操作系统和64位操作系统。本
程序
会根据系统的不同,自动调整任务模式,无需用户进行
设置
。 本
程序
的V3.3版分为标准版、增强版以及在线修复版。其
中
的标准版以及增强版都包含完整的DirectX组件。除此之外,增强版
中
还额外包含了c++ Redistributable Package,因此增强版不但能解决DirectX组件的问题,而且还能解决c++组件异常产生的问题。增强版适合无法自行解决c++相关问题的用户使用。在线修复版的功能与标准版相同,只是其所需的
文件
将通过Internet下载,因此大大减小了
程序
的体积。本
程序
的各个版本之间,主
程序
完全相同,只是配套使用的数据包不同。因此,当您使用标准版数据包时,
程序
将进行标准修复;当您使用增强版的数据包时,
程序
将进行增强修复;当数据包不全或没有数据包(即只有DirectX Repair.exe
程序
)时,
程序
将进行在线修复。在线修复、离线修复可自由灵活组合,充分满足不同用户的需要。 本
程序
自V2.0版起采用全新的底层
程序
架构,使用了异步多线程编程技术,使得检测、下载、修复单独进行,互不干扰,快速如飞。新
程序
更改了自我校验方式,因此使用新版本的
程序
时不会再出现自我校验失败的错误;但并非取消自我校验,因此
程序
安全性与之前版本相同,并未降低。
程序
有自动更新c++功能。由于绝大多数软件运行时需要c++的支持,并且c++的异常也会导致0xc000007b错误,因此
程序
在检测修复的同时,也会根据需要更新系统
中
的c++组件。自V3.2版本开始使用了全新的c++扩展包,可以大幅提高工业软件修复成功的概率。修复c++的功能仅限于增强版,标准版及在线修复版在系统c++异常时(非丢失时)会提示用户使用增强版进行修复。
程序
有两种窗口样式。正常模式即
默认
样式,适合绝大多数用户使用。另有一种简约模式,此时窗口将只显示最基本的内容,修复会自动进行,修复完成10秒钟后会自动退出。该窗口样式可以使修复工作变得更加简单快速,同时方便其他软件、游戏将本
程序
内嵌,即可进行无需人工参与的快速修复。开启简约模式的方法是:打开
程序
所在目录下的“Settings.ini”
文件
(如果没有可以自己创建),将其
中
的“FormStyle”一项的值改为“Simple”并保存即可。
程序
有高级筛选功能,开启该功能后用户可以自主选择要修复的
文件
,避免了其他不必要的修复工作。同时,也支持通过
文件
进行辅助筛选,只要在
程序
目录下建立“Filter.dat”
文件
,其
中
的每一行写
一个
需要修复
文件
的序号即可。该功能仅针对高级用户使用,并且必须在正常窗口模式下才有效(简约模式时无效)。 本
程序
有自动记录日志功能,可以记录每一次检测修复结果,方便在出现问题时,及时分析和查找原因,以便找到解决办法。
程序
的“选项”对话框
中
包含了4项高级功能。点击其
中
的“注册系统
文件
夹
中
所有dll
文件
”按钮可以自动注册系统
文件
夹下的所有dll
文件
。该项功能不仅能修复DirectX的问题,还可以修复系统
中
很多其他由于dll未注册而产生的问题,颇为实用。点击该按钮旁边的小箭头,还可以注册任意指定
文件
夹下的dll
文件
,方便用户对绿色版、硬盘版的
程序
组件进行注册。点击第二个按钮可以为dll
文件
的右键菜单添加“注册”和“卸载”项,方便对单独的dll
文件
进行注册。请注意,并不是所有的dll
文件
都可以通过这种方式注册。点击“DirectX版本”选项卡可以自行修改系统
中
DirectX的版本信息。点击“DirectX加速”选项卡可以控制系统
中
DirectX加速的开启与关闭。 新版
程序
集成了用户反馈
程序
,可以在用户允许的前提下发送检测修复结果。用户也可以在出现问题时通过反馈
程序
和软件作者进行交流,共同查找问题。反馈是完全自愿和匿名(如果不填写E-mail地址)的。 本
程序
的通用版基于Microsoft .NET Framework 2.0开发,对于Windows 2000、Windows XP、Windows 2003的用户需要首先安装.NET Framework 2.0或更高版本方可运行本
程序
。有关下载和安装的详细信息请参阅“致Windows XP用户.txt”
文件
。对于Windows Vista、Windows 7及后续用户,可以直接运行本
程序
。 同时鉴于Windows 8(Windows 8.1、Windows 8.1 Update)、Windows 10系统
中
默认
未包含.NET Framework 2.0,因此新版的
程序
文件
夹内将包含
一个
DirectX_Repair_win8的特别版
程序
,该
程序
功能与通用版相同,基于.NET Framework 4.0开发,可以在Windows8(Windows 8.1、Windows 8.1 Update)、Windows 10系统
中
直接运行(其他系统如果安装了.NET Framework 4.0也可以运行这个特别版的
程序
)。 本
程序
的官方博客地址为:http://blog.csdn.net/vbcom/article/details/6962388 所有的更新以及技术支持都可以到该博客上找到。
uniapp实战开发商城APP和小
程序
课程由英特网络独家录制,购买课程后赠送后端CMS管理系统,可以修改商品及接口数据,同时CMS提供Uniapp所需要的全部API接口,包括课程内容:安卓证书申请/APP苹果打包/APP安卓打包/微信小
程序
发布/后端代码发布/H5...
如何
设置
文件
的
默认
打开方式
Windows如何
设置
文件
的
默认
打开方式
当使用Windows更新后,系统无法识别已安装的应用
程序
时,我们就无法为某些格式的
文件
直接
设置
文件
的
默认
打开方式
。 可以通过如下方式
实现
对
文件
的
默认
打开方式
设置
: 1、点击选
中
文件
。 2、右键,打开属性 3、点击
打开方式
后的更改 4、选择
默认
打开使用的应用
程序
5、点击右下角的应用 然后电脑
中
的所有的同类型的
文件
都可以
默认
用选定的
程序
打开。 ...
文件
类型打开怎么改成计算机
程序
,电脑怎样修改
文件
默认
打开方式
我们在使用电脑的时候,经常会遇到
一个
文件
拥有多种
打开方式
,当
默认
开启的
程序
并非我们想要的
程序
时我们就希望去修改
设置
,那么电脑怎样修改
文件
默认
打开方式
呢?下面学习啦小编就为大家带来了电脑修改
文件
默认
打开方式
的方法。电脑修改
文件
默认
打开方式
方法1、打开需要
设置
默认
打开方式
的
文件
所在的
文件
夹,点击选择该
文件
,此时可看到菜单栏下有相应的软件图标。如下图所示2、点击该软件图标旁边的倒三角符号,在下拉列表
中
选...
C++ Builder
13,825
社区成员
102,679
社区内容
发帖
与我相关
我的任务
C++ Builder
C++ Builder相关内容讨论区
复制链接
扫一扫
分享
社区描述
C++ Builder相关内容讨论区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章