windows 特殊文件后缀集合

windows库

今天又特别注意了一下windows 7上的库(音乐库、视频库)等等,原以为是使用注册表累加的每一项,但后来不经意间发现是使用的特殊后缀的xml文件,当每添加或删除库中的文件夹时,就在这个xml文件里修改。

它的后缀是".library-ms",位置是在 "%appdata%Microsoft/Windows/Libraries",在资源管理器里面,它们看起来就像是文件夹,不过右键属性中比常规文件夹多一个“库”的选项卡,在这里可以增删包含文件夹和是否显示在导航窗格中。

在资源管理器中显示的名称并不是真实文件夹的名称,在命令行中显示出来的文件名称列表如下:


2010/12/09  09:01    <DIR>          .
2010/12/09  09:01    <DIR>          ..
2010/09/06  14:19             3,212 Documents.library-ms
2010/09/30  08:39             3,496 Music.library-ms
2010/09/30  08:39             3,532 Pictures.library-ms
2010/09/25  11:20             1,539 utilitys.library-ms
2010/09/30  08:39             3,510 Videos.library-ms
2010/12/09  09:01             1,456 迅雷下载.library-ms
               6 个文件         16,745 字节
               2 个目录 30,784,176,128 可用字节

其中,代表音乐库的Music.library-ms的文件内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<libraryDescription xmlns="http://schemas.microsoft.com/windows/2009/library">
  <name>@shell32.dll,-34584</name>
  <ownerSID>S-1-5-21-3545117420-170660103-4234457633-1002</ownerSID>
  <version>3</version>
  <isLibraryPinned>true</isLibraryPinned>
  <iconReference>imageres.dll,-1004</iconReference>
  <templateInfo>
    <folderType>{94d6ddcc-4a68-4175-a374-bd584a510b78}</folderType>
  </templateInfo>
  <searchConnectorDescriptionList>
    <searchConnectorDescription publisher="Microsoft" product="Windows">
      <description>@shell32.dll,-34586</description>
      <isDefaultSaveLocation>true</isDefaultSaveLocation>
      <simpleLocation>
        <url>knownfolder:{4BD8D571-6D19-48D3-BE97-422220080E43}</url>
        <serialized>MBAAAEAFCAAAAAAAADAAAAAAAY0gAAQBRAAAAsyOeXPxItcAD5wDCUMSLHwQ
O8gAFj0yBAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAMWAUAwHQB+TQDi66kGEiiNCAsCMw0ZGA8yQ6wFA
AAAAAAAAAAAAAAAAAAAAAAAA0BQMAAAAAAwH9EVRRAQVzVmczBAYAgAAEAw7+6uOjSxH9EVRqAAAAY+i
AAAAAEAAAAAAAAAAAAgNAAAAAAQVAMHAlBgcAMHAAAAQAMHAoBQZAwGAsBwMAIDAuAAZAwGAsBALA0CA
yAQMAgDAxAwMAAAAUAATAEDAAAAAA8RPZOCEA02b5VWYAgDAIAABA8uvf0zjj8RPZOiKAAAA+FAAAAAA
dAAAAAAAAAAAAAAAAAAAA0GAvBQeAUGAhBAAAQBA0BQMAAAAAAwH9k5IRAQT1NXajBAYAgAAEAw7++RP
POyH9k5IqAAAAQdGAAAAAMAAAAAAAAAAAAgNAAAAAAQTAUHAzBQaAMGAAAAQAMHAoBQZAwGAsBwMAIDA
uAAZAwGAsBALA0CAyAQMAcDA5AAMAAAAUAAAAUEAAAAHAAAABAAAAwBAAAwLAAAAAAAAAQEAAAwEAAAA
DAAAAgCB17LEAAAAPNFADpDXVNXZyNHXt9WelFGXNV3cpNGAAABAAAQBAAAoNAAAAEWAAAAHAAAALAAA
gGX1YvUGtNNS+epQiACCOMUYBAAAVCAAAkAAAAaiAAAAxMFUTJuiYZEvMhzQ7y/ETaCmt5cbAAAAEAAA
AAwHAAAAuAAAAMFAtAQMA0CA1AQLAIDAxAQLAMDA1AANAUDAxAQMAcDA0AgMAADAtAQMAcDAwAgNAYDA
wAQMAADAzAQLAQDAyAwMAQDA0AQNAcDA2AwMAMDAtAQMAADAwAgMAAAAAAAAAAAAAAAYAAAADAAAgiFA
AAAAAAAA0VmcylHAAAAAAAAAAAAAAQjz+1UllhyRnSAXIr0CT4rdzOMF4S73Rw4hEuyKHiEA04sfNVZZ
oc0pEwFyKtwE+a3sDTBu0+dEMeIhrsyhIBAAAAAA</serialized>
      </simpleLocation>
    </searchConnectorDescription>
    <searchConnectorDescription publisher="Microsoft" product="Windows">
      <description>@shell32.dll,-34588</description>
      <isDefaultNonOwnerSaveLocation>true</isDefaultNonOwnerSaveLocation>
      <simpleLocation>
        <url>knownfolder:{3214FAB5-9757-4298-BB61-92A9DEAA44FF}</url>
        <serialized>MBAAAEAFCAAAAAAAADAAAAAAAY0gAAQBRAAAAUEFZo/KEocAY1xOr1DBKHAW
dsza9QgyBAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAA8YAUAwHQB+TQDi66kGEiiNCAsCMw0ZGA8yQ6wFA
AAAAAAAAAAAAAAAAAAAAAAAA0BQMAAAAAAwH9EVRRAQVzVmczBAYAgAAEAw7+6uOjSxH9EVRqAAAAY+i
AAAAAEAAAAAAAAAAAAgNAAAAAAQVAMHAlBgcAMHAAAAQAMHAoBQZAwGAsBwMAIDAuAAZAwGAsBALA0CA
yAQMAgDAxAwMAAAAUAAeAEDAAAAAA4RP0pTEAAVdixWajBAAiBACAQAAv7r76MKFe0Dd6oCAAAAcMCAA
AAQAAAAAAAAAAAAA4AAAAAAAQBQdAIGAsBQaAMGAAAAQAMHAoBQZAwGAsBwMAIDAuAAZAwGAsBALA0CA
yAQMAgDAxAgNAAAAWAAdAEDAAAAAA4uO9USEA0Udzl2YAAGAIAABA8uvurzoU4uO9UiKAAAA2xIAAAAA
BAAAAAAAAAAAAYDAAAAAA0EA1BwcAkGAjBAAAAEAzBAaAUGAsBAbAMDAyAgLAQGAsBAbAwCAtAgMAEDA
4AAMAMDAAAAFAAAAGBAAAwBAAAQAAAAAcAAAA8CAAAAAAAAAFBAAAMBAAAwAAAAAoQQ9+CBAAAwTTBwQ
6wVVzVmczxFU1JGbpNGXNV3cpNGAAABAAAQBAAAo1AAAA0YAAAAHAAAALAAAgWr+UIzVXipQ7Gmkp6tq
E9fjBAAAVCAAAkAAAAaiAAAAxMFUTJuiYZEvMhzQ7y/ETaCmt5cbAAAAEAAAAAwHAAAAuAAAAMFAtAQM
A0CA1AQLAIDAxAQLAMDA1AANAUDAxAQMAcDA0AgMAADAtAQMAcDAwAgNAYDAwAQMAADAzAQLAQDAyAwM
AQDA0AQNAcDA2AwMAMDAtAQMAADAwAgMAAAAAAAAAAAAAAAYAAAADAAAgiFAAAAAAAAA0VmcylHAAAAA
AAAAAAAAAQjz+1UllhyRnSAXIr0CT4rKjWNx5P73RoZmEuyKHiEA04sfNVZZoc0pEwFyKtwE+qyoVTc+
z+dEamJhrsyhIBAAAAAA</serialized>
      </simpleLocation>
    </searchConnectorDescription>
  </searchConnectorDescriptionList>
</libraryDescription>

“发送到”菜单

文件右键菜单中的“发送到”菜单中的每一项的命令都由一个文件指定,文件在%AppData%Roaming/Microsoft/Windows/SendTo中,其中有普通的.lnk快捷方式,还有一个特殊后缀的文件。如下:


“发送到”菜单中的“邮件收件人”

%appdata%Microsoft/Windows/SendTo
中有一个文件名为"Mail Recipient.MAPIMail"的文件,它的文件内容只有"mail"4个字,它代表的就是文件的右键菜单中的“发送到”中的“邮件发件人“,使用此菜单可以快速调用默认邮件发送程序将文件当做附件,发送出去。

"发送到"中“文档”菜单

这个是一个名为“文档.mydocs”的空文件。

"发送到"中“压缩(zipped)文件夹”菜单

文件名为“Compressed (zipped) Folder.ZFSendToTarget”,内容为“Zip”。

"发送到"中“桌面快捷方式”菜单

文件名为"Desktop (create shortcut).DeskLink",内容为“Desktop”.

显示桌面命令

显示桌面在vsista之后有了些改动,使用了新的方式实现 ,当然也可以使用老的方式。

在xp、2003等老操作系统下面,显示桌面的功能%AppData%Roaming/Microsoft/Internet Explorer/Quick Launch下面的“Show Desktop.scf”文件(scf的全称是shell command file)完成,这个文件在资源管理器中显示由于desktop.ini中的设置而导致显示文件名为显示桌面。
[LocalizedFileNames]
Show Desktop.scf=@%SystemRoot%/system32/shell32.dll,-10113
它的文件内容为:
[Shell]
Command=2
IconFile=explorer.exe,3
[Taskbar]
Command=ToggleDesktop

在windows 7下面,显示桌面由%AppData%Roaming/Microsoft/Internet Explorer/Quick Launch下面的“Shows Desktop.lnk”文件实现,这个链接文件实际指向应该是@%SystemRoot%/system32/shell32.dll,-10113,但是我不知道这个链接如何被windows 7解释的,因为lnk文件是二进制格式,我还没有细致地研究它。同样地还有一个“windows Switcher.lnk”的快捷方式用来打开窗口切换界面。它们在资源管理器中显示的名称同样由“desktop.ini”更改了。

字体文件

%windir%fonts下面直接显示的字体名称并不是实际的字体文件,实际上一个字体文件可以包含多种字体,字体的文件后缀有.fon、.ttf和.ttc等。以“华文仿宋”为例,它的实际文件为STFANGSO.TTF。

如果还有其它的想起来或者遇到了,再添加之……

原文地址:https://www.cnblogs.com/k1988/p/2165620.html