Desktop.ini文件详解

原文地址

 

http://blog.macd.cn/391424/viewspace-20168

 

 

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

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

     [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]
      ōwner=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/DefaultUser/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看看有什么变化。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值