如何更改文件的图标

  我一直都喜欢干净、绿色,上网也喜欢裸奔的多,对于系统更喜欢免安装的多。所以我的系统都GHOSTXP,而更喜欢其他软件都是免安装的,所以连OFFICE都免安装。

  今天一个朋友对我出一个难题:就是干净的系统(即没能安装OFFICE)对WORD文件默认找开方式是“写字板”,图标也是写字板的图标,但他有一个免安装的OFFICE,已经把打开方式改为微软的WORD了,但图标还是写字板的图标。于是我进行一番艰难之旅,终于把这个难题解决!

   1、原来干净的XP中的“.doc”文件就是这个写字板图标。

   2、这是朋友传来的免安装的OFFICE,网上有,可以去下载,一解压就可以用了。

 

 3、我把“.doc”文件的打开方式设WORD打开,虽然打开了,但图标怎么改也改不了。

 

 

  4、正确的方法是:

      1)任意打开一个文件夹,工具---文件夹选项

     2)文件类型-------在“已注册的文件类型”里下拉,找到“DOC DOC文件”,选中它。然后再点“还原”。

 

  3)这时候再选中“DOC DOC 文件”,发现那个“还原”变成“高级”了,点“高级”

 

  4)弹出“编辑文件类型”,点“更改图标”

   5)弹出“更改图标”对话框,我们可以寻找word文件了,如下图,找到它之后中,就可以双击它了,

这里我们可以设想一下:如果我想再找别的图标代替,也是可以的,不一定要用微软的word文件图标

    6)选中后,再在下面几个图标中选一个,现在当然是要选经典的即是中间那个,选中后“确定”

   7)再确定

8)再回来看看,原来那个文件的图标变成我们熟悉的WORD文件的图标了。成功!

 

   其实,通过这次之后,我们可以对其它文件的图标随心所欲地去更改图标了,不过大家在闹着玩的时候可得记住:要备份好系统,不然糊里糊涂地改错了,找不到原来的图标不要哭鼻子呀,呵呵!

Delphi是一种可视化的编程语言和集成开发环境,可用于创建各种应用程序。修改文件图标是其中的一个功能,下面介绍如何使用Delphi来实现该功能。 我们可以使用ShellAPI单元中的ExtractIconEx函数来获取系统中的图标,并使用SHChangeNotify函数通知系统文件更改。 首先,在程序中添加ShellAPI单元,然后创建一个TImageList组件,其用于存储我们获取到的图标。接下来定义一个函数GetFileIcon用于获取文件图标。 函数的代码如下: procedure GetFileIcon(const AFileName: string; ImageList: TImageList; var IconIndex: integer); var Icon: HICON; IconCount: integer; begin IconCount := ExtractIconEx(PChar(AFileName), -1, nil, nil, 0); if IconCount > 0 then begin IconIndex := ImageList.AddIcon(Icon); DestroyIcon(Icon); end; end; 接着,在主窗体的OnCreate事件中定义一个图标索引值,用于保存我们刚刚添加的图标: var IconIndex: integer; ... procedure TForm1.FormCreate(Sender: TObject); begin ... IconIndex := -1; end; 最后,在我们需要修改文件图标的地方,我们可以调用GetFileIcon函数来获取需要修改文件图标,然后将其设置为相应的文件图标。 代码如下: procedure TForm1.Button1Click(Sender: TObject); var Icon: HICON; FileInfo: TSHFileInfo; begin if SelectDirectory('请选择需要修改图标的目录', '', s) then begin if IconIndex = -1 then begin Icon := LoadIcon(hInstance, 'MAINICON'); ImageList1.Clear; ImageList_AddIcon(ImageList1.Handle, Icon); IconIndex := ImageList1.Count - 1; end; SHGetFileInfo(PChar(s), 0, FileInfo, SizeOf(FileInfo), SHGFI_ICON or SHGFI_SMALLICON); FileInfo.hIcon := ImageList1.GetIcon(IconIndex); SHChangeNotify(SHCNE_ASSOCCHANGED, SHCNF_IDLIST, nil, nil); ShowMessage('文件图标修改成功!'); end; end; 通过以上步骤,我们就可以使用Delphi实现修改文件图标的功能了。
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值