我是靠谱客的博主 谨慎外套,最近开发中收集的这篇文章主要介绍Desktop.ini文件详解,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

由于有部分病毒会在文件夹下创建desktop.ini文件,目前很多朋友对该文件产生了错误的认识,认为是病毒文件。其实这是错误的,

desktop.ini与病毒并没有多深的源源,desktop.ini是系统可识别的一个文件,作用是存储用户对文件夹的个性设置;而病毒所创建的

desktop.ini则不同(这麽说也并不完全正确,见后文。),病毒所创建的文件内容依病毒的不同而异,可以是感染日期或其它的有意无意字符

(串)。
下面介绍desktop.ini的用处:

一、文件夹图标

     [.ShellClassInfo]
     InfoTip=注释
     IconFile=图标文件的路径
     IconIndex=选择要使用文件中的第几个图标

     自定义图标文件,其扩展名可以是.exe、.dll、.ico等。


二、文件夹背景

     [ExtShellFolderViews]
     []
     IconArea_Image=背景图片的路径(如C:\Documents and Settings\All Users\Documents\My Pictures\示例图片\Blue hills.jpg,图片

最好是JPG或BMP格式的)

三、标示特殊文件夹

     系统中有一些特殊的文件夹,如回收站、我的电脑、我的文档、网上邻居等。这些文件夹的标示有两种方法:
     1.直接在文件夹名后续上一个"."在加对应的CLISID
     如:把一个文件夹取名为:新建文件夹.
     那么这个文件夹的图标将变为我的电脑的图标,并且在双击该文件夹时将打开我的电脑。
现将系统中的一些类似的特殊文件夹的CLISID提供给大家:
      我的电脑.
      回收站.
      拨号网络.
      控制面板.
      打印机.
      网上邻居.
      计划任务.
      我的文档.
      URL历史.
     2.第二种是通过一个desktop.ini文件
      还以我的电脑为例:
      新建一个文件夹,名字随便,然后在其下边建立desktop.ini文件,内容如下:
       [.ShellClassInfo]
       CLISID=
      注:有部分病毒会建立这样的文件夹以达到隐藏自身的目的.另外这也是一种我们隐藏小秘密的方法.

四、标示文件夹所有者
     这通常见于我的文档等如我的文档里就有这样一个文件,内容如下:

     [DeleteOnCopy]
     Owner=Administrator
     Personalized=5
     PersonalizedName=My Documents

五、改变文件夹颜色

     关于这项功能的实现需要注册一个.dll文件ColorFolder.dll。具体情况本人由于未曾尝试,故不能提供相应内容,以下是本人在网上搜到

的以供参考。

     改变文件夹颜色
     [.ShellClassInfo]
     IconFile=ColorFolder.dll
     IconIndex=0

保存为deskto.ini文件,连同ColorFolder.dll文件(Mikebox网盘里有下载)

如果想同时添加背景图片及改变文件夹内文件名颜色!

     [ExtShellFolderViews]
     =
     []
     IconArea_Text=0x000000FF
     Attributes=1
     IconArea_Image=bg04.jpg
     [.ShellClassInfo]
     ConfirmFileOp=0

把名字为bg04.jpg的图片也放到同一个文件夹里,再在原有代码下再加上以上这些就可以改变文件夹的背景图片了!更换bg04.jpg图片,并修

改红色位置的名称(bg04.jpg)为更换后的图片名,就可以设置成为你喜欢的背景图片(建议选用jpg格式的)!修改0x000000FF就可以变文件

颜色为你想要的颜色!0x000000FF为红色,0x00008000为绿色,0x00FF0000为蓝色,0x00FFFFFF为白色!(改变颜色也要有动态链接库文件的

支持)


实例下载请登陆http://www.mikebox.com/,输入提取码:6fd177009b8b4d66955aa190eccea968提取事例!
注册动态链接库:请在开始〉〉〉运行中输入:"regsvr32 ColorFolder.dll"(不包括引号,regsvr32和ColorFolder.dll之间有空格!)注册

动态链接库到系统即可!

好了,desktop.ini的用处都知道了,现在谈谈病毒的问题,
根据本人的经验,病毒所创建的desktop.ini的内容为日期或一个字符,至于其是否具有意义本人上说不清,但可以肯定的是该文件并非可执行的程序,其存在不会造成甚麽危害。另外,威金病毒会建立一些_desktop.ini文件,删除时可以依如下进行:

在命令行执行:
del X:\_desktop.ini /f/q/s/a:h   (X:是盘符,如C:)
   相关参数如下:
/P 删除每一个文件之前提示确认。
/F 强制删除只读文件。
/S 从所有子目录删除指定文件。
/Q 安静模式。删除全局通配符时,不要求确认。
/A 根据属性选择要删除的文件。
attributes R 只读文件 S 系统文件
                  H 隐藏文件 A 存档文件
- 表示“否”的前缀

如果命令扩展名被启用,DEL会如下改变:

/S 开关的显示句法会颠倒,即只显示已经删除的文件,而不显示找不到的文件  





一些常见疑问:
1:管理工具文件夹里面的desktop.ini中[LocalizedFileNames]这个什么意思?
答:[LocalizedFileNames]是“局限性文件名称”也就是控制文件的标识。
2:一个desktop.ini里面
[.shellclassinfo]
LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-21762
这个起什么作用?
前面LocalizedResourceName这个又是起什么作用?
后面-21762这个又是起什么作用?根据什么原理?
答:LocalizedResourceName是“局限性资源名称”后面的是名称引用的地址,注意SHELL32.DLL动态链接库中记录了很多这类的信息,还包括图标ICO的地址,最后的-21762是一个ID,也可以理解成INDEX索引。
3:一个desktop.ini里面
InfoTip是指向文件夹时的说明,
但是infotip=@Shell32.dll,-12690这个什么意思
答:参考第二个问题就不难理解了,infotip是“信息提示”后边连接还是SHELL32.DLL。后面的-12690也是一个索引编号。
4:一个desktop.ini里面
IconFile是指图标的文件夹路径
IconFile=%SystemRoot%\system32\SHELL32.dll
ICONINDEX=-238是指图表文件名,
但是-238是哪个图标,这些图标放在哪个文件夹,
怎么可以清楚的看到这些图标的列表,
以及外面引用的数字代表的是哪个图标,比如说-238是代表哪个图标。
答:继续参考前两个问题的答案,ICONFILE是“ICO图标文件”,后面的我不再多解释了。至于如何找到这个图标,可以通过任意一个快捷方式的属性中的选择图标选项中查找图片,然后再对照索引来定位所指定的图片。
5:一个desktop.ini里面
[DeleteOnCopy]
Owner=Jed
Personalized=14
PersonalizedName=My Videos
这些什么意思?
答:这应该是“我的文档”中“我的视频”文件夹中的desktop.ini。“Owner=Jed”的意思是当前文件夹是属于“Jed”这个用户的, “Personalized=14”的意思是私人使用的私有化属性,14是什么意思没弄明白,“PersonalizedName=My Videos”的意思是此私有文档名称为“My Videos”。
6:一个desktop.ini里面,开头
; ==++==
;
; Copyright (c) Microsoft Corporation. All rights reserved.
;
; ==--==
这些是什么意思?
是不是跟HTML代码的<!-- -->中注释的功能一样呢?
如果是,那具体的格式是什么?
答:这个很简单,是指此段代码的所有权为“Microsoft”。这个很多地方都能看到,比如很多网站下面会写明“Copyright (c) 某某公司 Corporation. All rights reserved.”意思就是所有权归属。
7:一个desktop.ini里面
[.ShellClassInfo]
CLSID=
ConfirmFileOp=1
InfoTip=Contains application stability information.
这个什么意思?
答:这应该是受系统保护的文件夹中的desktop.ini,是用来指明ShellClass信息的,“CLSID=”是指class的ID在注册表中的地址是“1D2680C9-0E2A-469d-B787-065558BC7D43”,“InfoTip=Contains application stability information”为信息提示。请参考第3个问题的答案。
8:xp字体文件夹(c:\windows\fonts\)中的desktop.ini
[.ShellClassInfo]
UICLSID=
这个什么意思?
答:参考第7个问题不难理解,“UICLSID=”的意思是字体样式的ID在注册表中的地址为“BD84B380-8CA2-1069-AB1D-08000948F534”。
9:xp中C:\Documents and Settings\Default User\SendTo\desktop.ini中的
[LocalizedFileNames]
邮件接收者.MAPIMail=@sendmail.dll,-4
桌面快捷方式.DeskLink=@sendmail.dll,-21
什么意思?
答:“LocalizedFileNames”的意思就不说了,前面有。后面的问题直接按英文意思解释就可以了,一个是“邮件接收者”一个是“桌面快捷方式”,分别使用的动态链接库都是“sendmail.dll”只是ID不同,一个是4、一个是21。
10:一个desktop.ini
-----------------------------------
[.shellclassinfo]
iconindex=mainicon
iconfile=d:\千千静听\\ttplayer.exe
-----------------------------------
中的mainicon改成1或者2的话,外面文件夹的图标会改变,
但是iconfile=*.*是支持什么格式的图标呢?我只知道exe程序图标是支持的,ico格式应该也能支持,
试了BMP。JPG之类的都是不支持的。
答:“iconindex=mainicon ”的意思是ICO图标索引为主图片,也就是默认图标。“iconfile=d:\千千静听\\ttplayer.exe ”说明图标文件的位置是“d:\千千静听\\ttplayer.exe ”,这里要解释一下,一般EXE文件中都包含ICO图标文件,还有就是WINDOWS的图标不支持BMP、JPG、GIF等图片格式,如果想使用的话可以用ICO文件转换工具进行转换,另外在编程软件中都会提供此类转换功能。
11:ConfirmFileOp=0这句什么意思?
答:确认文件选项为0,至于0代表什么设置个人估计是默认设置,不行你换成1看看有什么变化。

最后

以上就是谨慎外套为你收集整理的Desktop.ini文件详解的全部内容,希望文章能够帮你解决Desktop.ini文件详解所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(134)

评论列表共有 0 条评论

立即
投稿
返回
顶部