说说文件的关联

本文介绍如何在WinCE环境下通过注册表操作实现.bmp和.gif文件的关联,包括设定图标及默认打开程序。
//========================================================================
//TITLE:
// 说说文件的关联
//AUTHOR:
// norains
//DATE:
// Saturday 13-October-2007
//Environment:
// EVC4.0 + Windows CE 5.0 Standard SDK
//========================================================================

在WinCE下设置未见关联是一件很容易简单的事情,但要将这件简单容易的事情单单用文字来描述却着实不简单.所以,还是老方法,直接上代码,然后注释讲解.

下面这部分代码的意图是将.bmp和.gif这两种文件关联到一个名为imagefile键下,然后在imagefile键中定义了这两种图片在eplorer显示的图标以及双击时用何种程序打开.

文章中出现的CReg类请参考该文章:http://blog.youkuaiyun.com/norains/archive/2007/06/20/1659925.aspx

CRegreg;

//.bmp文件链接到imagefile键
reg.Create(HKEY_CLASSES_ROOT,TEXT(".bmp"));
_tcscpy(szValue,TEXT(
"imagefile"));
reg.SetSZ(NULL,szValue);
reg.Reset();

//.gif文件链接到imagefile键
reg.Create(HKEY_CLASSES_ROOT,TEXT(".gif"));
_tcscpy(szValue,TEXT(
"imagefile"));
reg.SetSZ(NULL,szValue);
reg.Reset();

//创建imagefile键
reg.Create(HKEY_CLASSES_ROOT,TEXT("imagefile"));
reg.SetSZ(NULL,TEXT(
"imagefile"));
reg.Reset();

//设置explorer中显示的图标.该图标为UI.exe程序中序号为-183的ico.
reg.Create(HKEY_CLASSES_ROOT,TEXT("imagefile/DefaultIcon"));
_stprintf(szValue,TEXT(
"%s,-%d"),TEXT("UI.exe"),-183);
reg.SetSZ(NULL,szValue);
reg.Reset();

//设置imagefile文件打开的程序为imageeye.exe
reg.Create(HKEY_CLASSES_ROOT,TEXT("imagefile/shell/open/command"));
_tcscpy(szValue,TEXT(
"imageeye.exe"));
_tcscat(szValue,TEXT(
"%1"));
reg.SetSZ(NULL,szValue);
reg.Reset();


该代码创建的注册表结构如下(图一):


以上代码是将两个文件归结到imagefile键,然后根据imagefile键值进行相应的操作.如果想.bmp和.gif分别采用不同的设置也同样简单,只要将DefaultIcon和command这两部分代码分别移到各自的键位下即可.
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值