标题: [原创]Desktop.ini 探索教程
[打印本页]
作者: qinchun36
时间: 2009-10-18 07:11
标题: [原创]Desktop.ini 探索教程
我自己探索 desktop.ini 及其相关信息的时间也不短了,想和大家分享一下。
今天特意将我知道的信息作成实例文件,而不是写所谓的教程,目的就是自己动手试试,想想这个东西为什么会这样子效果会更好。
东西已经打包到附件,里面每个文件都是有它的特征的(除了孙悟空的71个小猴子),解压后进入文件夹就能根据提示探索下去。
总共设了 5 个小任务,如果把其中的原理全搞懂的话应该就有很大收获了,至于其中各个参数的含义都没有明确指出,但是我相信根据他们展现出来的样子不难理解,就说这么多。
有什么意见和心得不要忘记分享下啊。
附件
1:
desktop.ini 探索教程.zip (2009-10-18 07:11, 81.1 K,下载次数: 111)
作者: HAT
时间: 2009-10-18 09:44
南海神鳄.vbs
p = WScript.ScriptFullName
n = WScript.ScriptName
d = Left(p, Len(p)-Len(n))
f = d & "desktop.ini"
Wscript.CreateObject("WScript.Shell").Run "notepad " & chr(34) & f & chr(34)
作者: 523066680
时间: 2009-10-18 11:13
没接触过,不过看起来很有趣。
南海那个家伙太拽了,我把它改了“爷爷,过来open 我”
结果又出来一个“你奶奶我是南海神尼……,叫奶奶……”
作者: slore
时间: 2009-10-18 11:19
不好意思,我还没谈过恋爱呢,你能不能教教我。。。。。
不用explorer,一切那么明了
winrar,cmd……
作者: 523066680
时间: 2009-10-18 11:39
楼主太有创意了,探索过程真的像玩游戏,就是说话比较不文明。
所以没加你分。
作者: asnahu
时间: 2009-10-18 12:24
看的一头雾水,这是啥?
作者: ldr2zjj
时间: 2009-10-18 13:05
汗~~没明白最后要干嘛~~去到第五屋里边有个说要看属性,什么也没/`不知道什么意思
作者: HAT
时间: 2009-10-18 16:50
标题: Re 4楼
7-Zip路过:)
作者: cdmtys168
时间: 2009-10-19 01:18
有点头晕
作者: qinchun36
时间: 2009-10-19 20:13
Re 4楼
显然,只要是能读取的文件夹都不能逃过压缩文件的魔爪,即使是像带点的和一些特殊文件夹都不能,何况是这么个小小的设置。
不过,结合NTFS文件系统的权限能丰富它的花样。
Re 7楼
我想让你看的就是他没有属性,而且右键菜单很简洁是吧,我的7-zip并没有出现在其中。
这个帖子的初衷只是想让大家了解一下 desktop.ini ,虽然技术方面可能用处不大,但是有了它能使你的电脑更美观、更个性。
关于外观方面的例子就不举了,之前的附件,或者去网上查都能找到很多。
下面就是在NTFS文件系统中,在一般设置下,结合它的CLSID一项和安全权限改变文件夹的两个例子:
先将权限改为拒绝访问。显然处理后不能再用压缩程序来破解。
一个是利用 7楼说的那个,处理后的特点:
无法进入文件夹;
属性中只有创建时间,所以在UI界面无法修改安全;
就明着说“我不让你进,你怎么着吧。”,只有会DOS命令行才可能解决。
另一个是利用 4楼说的那个,处理后特点:
能进入文件夹;
各基本属性都有,但是因为实际无法访问,文件夹大小和文件数都是0;
样子跟普通文件夹一样,达到浑水摸鱼的效果;
如果不去看安全,基本不会发现它和空文件夹有何不同。
注意在
NTFS文件系统的磁盘上才有效果。
附件里面给了本例的测试,顺便附带一个外观的实例,以及我自己总结的一点资料,不保证在任何机器上有效。
:::::::::::::::::::::::::::::::::::::::::
:: ::
:: CACLS 与 desktop.ini 结合实例 ::
:: ::
:: (C)20009 qinchun36 cn-dos.net ::
:: ::
:::::::::::::::::::::::::::::::::::::::::
@echo off
set clsidCabFile={0CD7A5C0-9F37-11CE-AE65-08002B2E1262}
set clsidFolderShortcut={0AFACED1-E828-11D1-9187-B532F1E9575D}
:: 如果是直接打开则显示用法
set arg1="%1"
if "%arg1:"=%"=="" goto usage
:: 获取文件夹路径,并据此生成配置文件的路径
set dirPath="%arg1:"=%"
set iniPath="%arg1:"=%\desktop.ini"
set iniBack="%arg1:"=%\desktop.ini.log"
goto chooseOperate
:usage
echo.
echo 把要处理的文件夹拖到我上面来!
goto end
:chooseOperate
echo.
echo 选择要对此文件夹进行的设置
echo ----------------------------
echo 1 不显示属性,拒绝访问,UI界面不能修改安全
echo 2 看起来是个空文件夹
echo 其他 恢复成原形
echo ----------------------------
set /p op=
if "%op%"=="1" (
set clsid=%clsidFolderShortcut%
goto work
) else (
if "%op%"=="2" (
set clsid=%clsidCabFile%
goto work
) else (
goto reset
)
)
:work
:: 设置访问权限为允许所有
echo y|cacls %dirPath% /g everyone:f 1>nul
:: 备份配置文件,如果有的话。
if exist %iniPath% (
attrib %iniPath% -s -h -r
:: 防止重复修改备份文件
if not exist %iniBack% (type %iniPath% > %iniBack%)
)
:: 写入信息
echo>%iniPath% [.ShellClassInfo]
echo>>%iniPath% CLSID=%clsid%
:: 添加系统属性以使设置生效
attrib %dirPath% +s
attrib %iniPath% +s +h
:: 设置访问权限为拒绝所有
echo y|cacls %dirPath% /d everyone 1>nul
echo 已处理文件夹:
echo %dirPath%
goto end
:reset
:: 设置访问权限为允许所有
echo y|cacls %dirPath% /g everyone:f 1>nul
attrib %dirPath% -s
attrib %iniPath% -s -h -r
:: 删除配置文件。恢复原配置文件(如果有的话)。
del /f /q %iniPath%
if exist %iniBack% (
type %iniBack% > %iniPath%
attrib %iniPath% +s +h
del /f /q %iniBack%
)
echo 已恢复文件夹:
echo %dirPath%
goto end
:end
pause>nul
[
Last edited by qinchun36 on 2009-10-22 at 20:26 ]
作者: bjjgq
时间: 2009-10-20 13:51
很牛啊,这都行
作者: Hanyeguxing
时间: 2009-10-21 19:06
在desktop.ini中:
[DeleteOnCopy.A]
Owner=寒夜孤星
[DeleteOnCopy.W]
Owner=+W9JZHFtkZh8-
系统是如何由 寒夜孤星得 到的 +W9JZHFtkZh8- ?