Board logo

标题: 文件夹伪装与解伪装 批处理 [打印本页]

作者: 379184514     时间: 2008-11-6 19:03    标题: 文件夹伪装与解伪装 批处理

利用desktop.ini文件与类标示符

必要条件
1.文件夹属性必须是 s r
2.desktop.ini属性必须是 s a h r
(s、r、h、a分别表示系统属性、只读属性、隐藏属性和存档属性)

代码如下
set pp=%1
attrib -r -a -s -h %1\desktop.ini
del /q %1\desktop.ini
echo [.ShellClassInfo]>>%1\desktop.ini
echo CLSID={21ec2020-3aea-1069-a2dd-08002b30309d}>>%1\desktop.ini
attrib +r +a +s +h %1\desktop.ini
attrib +r +s %1
将代码复制到文本,改扩展名为bat文件,将要伪装的文件夹直接拖到这个bat文件上
(伪装为控制面板,若想伪装为 回收站、我的电脑 等请自行替换clsid)

解伪装代码如下
set pp=%1
attrib -r -a -s -h %1
保存为bat,将要解伪装的文件夹直接拖到这个bat上
简单实现功能,不判断以外情况

[ Last edited by 379184514 on 2008-11-6 at 19:05 ]
作者: tireless     时间: 2008-11-6 19:55
经测试,只需文件夹属性为 s 就行了。

伪装:
@echo off
attrib +s %1
more +3 < %0 > "%~1\desktop.ini" & exit /b
[.ShellClassInfo]
CLSID={21ec2020-3aea-1069-a2dd-08002b30309d}
恢复就去掉 s 属性。
作者: HAT     时间: 2008-11-6 21:11
系统属性应该是包含了隐藏属性和只读属性的吧
作者: tireless     时间: 2008-11-6 21:30
 

  Quote:
C:\>md test

C:\>attrib test
           C:\test

C:\>attrib +s test

C:\>attrib test
   S       C:\test

C:\>


作者: HAT     时间: 2008-11-6 21:33
我是说从对用户造成的结果来看,系统属性应该是包含了隐藏属性和只读属性的吧
作者: tireless     时间: 2008-11-6 22:41


  Quote:
Originally posted by HAT at 2008-11-6 09:33 PM:
我是说从对用户造成的结果来看,系统属性应该是包含了隐藏属性和只读属性的吧

不明白
作者: radem     时间: 2008-11-6 23:44
后2句只需:
attrib +s +h %1\desktop.ini
attrib +s %1

就可以了
作者: tireless     时间: 2008-11-7 00:17
呃..其实何必这样,直接重命名文件夹,给它加上“后缀名”不就行了?如:
ren test test.{21ec2020-3aea-1069-a2dd-08002b30309d}

作者: 379184514     时间: 2008-11-7 11:07
我也不是很清楚,只是为了以防万一全加上了,只是简单实现功能,未做优化
作者: 379184514     时间: 2008-11-7 11:11


  Quote:
Originally posted by tireless at 2008-11-7 00:17:
呃..其实何必这样,直接重命名文件夹,给它加上“后缀名”不就行了?如:
ren test test.{21ec2020-3aea-1069-a2dd-08002b30309d}

只是改名的话,会有后缀名,而且在windows下就很容易改回来,过于简单。我上面这个显示的名字跟普通文件夹一样,只是图标不同
作者: ucdos12     时间: 2008-11-7 15:16
autorun经常这样干
作者: 379184514     时间: 2008-11-7 19:40
双重伪装
名字改为
nul.{21ec2020-3aea-1069-a2dd-08002b30309d}

作者: tireless     时间: 2008-11-7 19:45


  Quote:
Originally posted by 379184514 at 2008-11-7 07:40 PM:
双重伪装
名字改为
nul.{21ec2020-3aea-1069-a2dd-08002b30309d}

如何改?
作者: 379184514     时间: 2008-11-7 20:15
不好意思,nul.{21ec2020-3aea-1069-a2dd-08002b30309d} 好像不行,abc.{21ec2020-3aea-1069-a2dd-08002b30309d}肯定行
ren %1 "abc.{21ec2020-3aea-1069-a2dd-08002b30309d}"
pause
至少让别人改名后还没变回来,大吃一惊

至于那个nul.{21ec2020-3aea-1069-a2dd-08002b30309d}\等高人想办法吧
作者: clian76     时间: 2008-11-7 21:22
以前刚学批处理时写的
:5
cls
echo.
echo         选择文件夹要伪装成的类型
echo  ======================================
echo.
echo             1、回收站
echo             2、网上邻居
echo             3、我的电脑
echo             4、IE浏览器
echo             5、控制面板
echo             6、Web文件夹
echo             7、打印机文件夹
echo             8、计划任务文件夹
echo             9、解除伪装
echo             0、返回主菜单
echo.
echo  ======================================
echo.
set /p leixing=  请选择:
if "%leixing%"=="1" goto hsz
if "%leixing%"=="2" goto wslju
if "%leixing%"=="3" goto wddl
if "%leixing%"=="4" goto ielnq
if "%leixing%"=="5" goto kzmb
if "%leixing%"=="6" goto wwjj
if "%leixing%"=="7" goto dyj
if "%leixing%"=="8" goto jfrw
if "%leixing%"=="9" goto jcwz
if "%leixing%"=="0" goto star
goto 5

:hsz
cls
echo.
echo  ======================================
echo.
echo     伪装类型: 回收站
echo.
echo     请把要伪装的文件夹拖放入此窗口,或直接在下面输入待伪装文件夹的路径。
echo     路径示例:  %cd%
echo.
echo             1、返回上级菜单
echo             0、返回主菜单
echo.
echo  ======================================
echo.
set lujing=:
set /p lujing=  请拖入文件夹或输入路径:
set lujing=%lujing%
if %lujing%==1 goto 5
if %lujing%==0 goto star
if %lujing%==: goto hsz
cd /d %lujing%
if %errorlevel% GTR 0 goto err
cls
if exist desktop.ini del /f /q /a desktop.ini
>desktop.ini echo [.ShellClassInfo]
>>desktop.ini echo UICLSID={7BD29E00-76C1-11CF-9DD0-00A0C9034933}
>>desktop.ini echo CLSID={645FF040-5081-101B-9F08-00AA002F954E}
attrib +s +h desktop.ini
attrib +s %lujing%
echo.
echo  ======================================
echo.
echo     文件夹[%lujing%]伪装成功!
echo.
echo     你可以去看看效果了,如果把文件夹名也改了,那就更像了。
echo.
echo  ======================================
echo.
pause>nul
goto 5
:err
cls
echo.
echo  ======================================
echo.
echo     :) 出错了!
echo.
echo     原因是:您输入的“%lujing%”不是有效的文件夹路径,请检查后再试。建议用拖放的方式自动输入待伪装文件夹的路径。
echo.
echo  ======================================
echo.
echo     按任意键返回菜单
pause>nul
goto hsz

:wslju
cls
echo.
echo  ======================================
echo.
echo     伪装类型: 网上邻居
echo.
echo     请把要伪装的文件夹拖放入此窗口,或直接在下面输入待伪装文件夹的路径。
echo     路径示例:  %cd%
echo.
echo             1、返回上级菜单
echo             0、返回主菜单
echo.
echo  ======================================
echo.
set lujing=:
set /p lujing=  请拖入文件夹或输入路径:
set lujing=%lujing%
if %lujing%==1 goto 5
if %lujing%==0 goto star
if %lujing%==: goto wslju
cd /d %lujing%
if %errorlevel% GTR 0 goto err
cls
if exist desktop.ini del /f /q /a desktop.ini
>desktop.ini echo [.ShellClassInfo]
>>desktop.ini echo UICLSID={7BD29E00-76C1-11CF-9DD0-00A0C9034933}
>>desktop.ini echo CLSID={208D2C60-3AEA-1069-A2D7-08002B30309D}
attrib +s +h desktop.ini
attrib +s %lujing%
echo.
echo  ======================================
echo.
echo     文件夹[%lujing%]伪装成功!
echo.
echo     你可以去看看效果了,如果把文件夹名也改了,那就更像了。
echo.
echo  ======================================
echo.
pause>nul
goto 5
:err
cls
echo.
echo  ======================================
echo.
echo     :) 出错了!
echo.
echo     原因是:您输入的“%lujing%”不是有效的文件夹路径,请检查后再试。建议用拖放的方式自动输入待伪装文件夹的路径。
echo.
echo  ======================================
echo.
echo     按任意键返回菜单
pause>nul
goto wslju

:wddl
cls
echo.
echo  ======================================
echo.
echo     伪装类型: 我的电脑
echo.
echo     请把要伪装的文件夹拖放入此窗口,或直接在下面输入待伪装文件夹的路径。
echo     路径示例:  %cd%
echo.
echo             1、返回上级菜单
echo             0、返回主菜单
echo.
echo  ======================================
echo.
set lujing=:
set /p lujing=  请拖入文件夹或输入路径:
set lujing=%lujing%
if %lujing%==1 goto 5
if %lujing%==0 goto star
if %lujing%==: goto wddl
cd /d %lujing%
if %errorlevel% GTR 0 goto err
cls
if exist desktop.ini del /f /q /a desktop.ini
>desktop.ini echo [.ShellClassInfo]
>>desktop.ini echo UICLSID={7BD29E00-76C1-11CF-9DD0-00A0C9034933}
>>desktop.ini echo CLSID={20D04FE0-3AEA-1069-A2D8-08002B30309D}
attrib +s +h desktop.ini
attrib +s %lujing%
echo.
echo  ======================================
echo.
echo     文件夹[%lujing%]伪装成功!
echo.
echo     你可以去看看效果了,如果把文件夹名也改了,那就更像了。
echo.
echo  ======================================
echo.
pause>nul
goto 5
:err
cls
echo.
echo  ======================================
echo.
echo     :) 出错了!
echo.
echo     原因是:您输入的“%lujing%”不是有效的文件夹路径,请检查后再试。建议用拖放的方式自动输入待伪装文件夹的路径。
echo.
echo  ======================================
echo.
echo     按任意键返回菜单
pause>nul
goto wddl

:ielnq
cls
echo.
echo  ======================================
echo.
echo     伪装类型: IE浏览器
echo.
echo     请把要伪装的文件夹拖放入此窗口,或直接在下面输入待伪装文件夹的路径。
echo     路径示例:  %cd%
echo.
echo             1、返回上级菜单
echo             0、返回主菜单
echo.
echo  ======================================
echo.
set lujing=:
set /p lujing=  请拖入文件夹或输入路径:
set lujing=%lujing%
if %lujing%==1 goto 5
if %lujing%==0 goto star
if %lujing%==: goto ielnq
cd /d %lujing%
if %errorlevel% GTR 0 goto err
cls
if exist desktop.ini del /f /q /a desktop.ini
>desktop.ini echo [.ShellClassInfo]
>>desktop.ini echo UICLSID={7BD29E00-76C1-11CF-9DD0-00A0C9034933}
>>desktop.ini echo CLSID={871C5380-42A0-1069-A2EA-08002B30309D}
attrib +s +h desktop.ini
attrib +s %lujing%
echo.
echo  ======================================
echo.
echo     文件夹[%lujing%]伪装成功!
echo.
echo     你可以去看看效果了,如果把文件夹名也改了,那就更像了。
echo.
echo  ======================================
echo.
pause>nul
goto 5
:err
cls
echo.
echo  ======================================
echo.
echo     :) 出错了!
echo.
echo     原因是:您输入的“%lujing%”不是有效的文件夹路径,请检查后再试。建议用拖放的方式自动输入待伪装文件夹的路径。
echo.
echo  ======================================
echo.
echo     按任意键返回菜单
pause>nul
goto ielnq

:kzmb
cls
echo.
echo  ======================================
echo.
echo     伪装类型: 控制面板
echo.
echo     请把要伪装的文件夹拖放入此窗口,或直接在下面输入待伪装文件夹的路径。
echo     路径示例:  %cd%
echo.
echo             1、返回上级菜单
echo             0、返回主菜单
echo.
echo  ======================================
echo.
set lujing=:
set /p lujing=  请拖入文件夹或输入路径:
set lujing=%lujing%
if %lujing%==1 goto 5
if %lujing%==0 goto star
if %lujing%==: goto kzmb
cd /d %lujing%
if %errorlevel% GTR 0 goto err
cls
if exist desktop.ini del /f /q /a desktop.ini
>desktop.ini echo [.ShellClassInfo]
>>desktop.ini echo UICLSID={7BD29E00-76C1-11CF-9DD0-00A0C9034933}
>>desktop.ini echo CLSID={21EC2020-3AEA-1069-A2DD-08002B30309D}
attrib +s +h desktop.ini
attrib +s %lujing%
echo.
echo  ======================================
echo.
echo     文件夹[%lujing%]伪装成功!
echo.
echo     你可以去看看效果了,如果把文件夹名也改了,那就更像了。
echo.
echo  ======================================
echo.
pause>nul
goto 5
:err
cls
echo.
echo  ======================================
echo.
echo     :) 出错了!
echo.
echo     原因是:您输入的“%lujing%”不是有效的文件夹路径,请检查后再试。建议用拖放的方式自动输入待伪装文件夹的路径。
echo.
echo  ======================================
echo.
echo     按任意键返回菜单
pause>nul
goto kzmb

:wwjj
cls
echo.
echo  ======================================
echo.
echo     伪装类型: Web文件夹
echo.
echo     请把要伪装的文件夹拖放入此窗口,或直接在下面输入待伪装文件夹的路径。
echo     路径示例:  %cd%
echo.
echo             1、返回上级菜单
echo             0、返回主菜单
echo.
echo  ======================================
echo.
set lujing=:
set /p lujing=  请拖入文件夹或输入路径:
set lujing=%lujing%
if %lujing%==1 goto 5
if %lujing%==0 goto star
if %lujing%==: goto wwjj
cd /d %lujing%
if %errorlevel% GTR 0 goto err
cls
if exist desktop.ini del /f /q /a desktop.ini
>desktop.ini echo [.ShellClassInfo]
>>desktop.ini echo UICLSID={7BD29E00-76C1-11CF-9DD0-00A0C9034933}
>>desktop.ini echo CLSID={BDEADF00-C265-11d0-BCED-00A0C90AB50F}
attrib +s +h desktop.ini
attrib +s %lujing%
echo.
echo  ======================================
echo.
echo     文件夹[%lujing%]伪装成功!
echo.
echo     你可以去看看效果了,如果把文件夹名也改了,那就更像了。
echo.
echo  ======================================
echo.
pause>nul
goto 5
:err
cls
echo.
echo  ======================================
echo.
echo     :) 出错了!
echo.
echo     原因是:您输入的“%lujing%”不是有效的文件夹路径,请检查后再试。建议用拖放的方式自动输入待伪装文件夹的路径。
echo.
echo  ======================================
echo.
echo     按任意键返回菜单
pause>nul
goto wwjj

:dyj
cls
echo.
echo  ======================================
echo.
echo     伪装类型: 打印机文件夹
echo.
echo     请把要伪装的文件夹拖放入此窗口,或直接在下面输入待伪装文件夹的路径。
echo     路径示例:  %cd%
echo.
echo             1、返回上级菜单
echo             0、返回主菜单
echo.
echo  ======================================
echo.
set lujing=:
set /p lujing=  请拖入文件夹或输入路径:
set lujing=%lujing%
if %lujing%==1 goto 5
if %lujing%==0 goto star
if %lujing%==: goto dyj
cd /d %lujing%
if %errorlevel% GTR 0 goto err
cls
if exist desktop.ini del /f /q /a desktop.ini
>desktop.ini echo [.ShellClassInfo]
>>desktop.ini echo UICLSID={7BD29E00-76C1-11CF-9DD0-00A0C9034933}
>>desktop.ini echo CLSID={2227A280-3AEA-1069-A2DE-08002B30309D}
attrib +s +h desktop.ini
attrib +s %lujing%
echo.
echo  ======================================
echo.
echo     文件夹[%lujing%]伪装成功!
echo.
echo     你可以去看看效果了,如果把文件夹名也改了,那就更像了。
echo.
echo  ======================================
echo.
pause>nul
goto 5
:err
cls
echo.
echo  ======================================
echo.
echo     :) 出错了!
echo.
echo     原因是:您输入的“%lujing%”不是有效的文件夹路径,请检查后再试。建议用拖放的方式自动输入待伪装文件夹的路径。
echo.
echo  ======================================
echo.
echo     按任意键返回菜单
pause>nul
goto dyj

:jfrw
cls
echo.
echo  ======================================
echo.
echo     伪装类型: 计划任务文件夹
echo.
echo     请把要伪装的文件夹拖放入此窗口,或直接在下面输入待伪装文件夹的路径。
echo     路径示例:  %cd%
echo.
echo             1、返回上级菜单
echo             0、返回主菜单
echo.
echo  ======================================
echo.
set lujing=:
set /p lujing=  请拖入文件夹或输入路径:
set lujing=%lujing%
if %lujing%==1 goto 5
if %lujing%==0 goto star
if %lujing%==: goto jfrw
cd /d %lujing%
if %errorlevel% GTR 0 goto err
cls
if exist desktop.ini del /f /q /a desktop.ini
>desktop.ini echo [.ShellClassInfo]
>>desktop.ini echo UICLSID={7BD29E00-76C1-11CF-9DD0-00A0C9034933}
>>desktop.ini echo CLSID={D6277990-4C6A-11CF-8D87-00AA0060F5BF}
attrib +s +h desktop.ini
attrib +s %lujing%
echo.
echo  ======================================
echo.
echo     文件夹[%lujing%]伪装成功!
echo.
echo     你可以去看看效果了,如果把文件夹名也改了,那就更像了。
echo.
echo  ======================================
echo.
pause>nul
goto 5
:err
cls
echo.
echo  ======================================
echo.
echo     :) 出错了!
echo.
echo     原因是:您输入的“%lujing%”不是有效的文件夹路径,请检查后再试。建议用拖放的方式自动输入待伪装文件夹的路径。
echo.
echo  ======================================
echo.
echo     按任意键返回菜单
pause>nul
goto jfrw

:jcwz
cls
echo.
echo  ======================================
echo.
echo     伪装类型: 解除伪装!
echo.
echo     请把要解除伪装的文件夹拖放入此窗口,或直接在下面输入待解除伪装文件夹的路径。
echo     路径示例:  %cd%
echo.
echo             1、返回上级菜单
echo             0、返回主菜单
echo.
echo  ======================================
echo.
set lujing=:
set /p lujing=  请拖入文件夹或输入路径:
set lujing=%lujing%
if %lujing%==1 goto 5
if %lujing%==0 goto star
if %lujing%==: goto jcwz
cd /d %lujing%
if %errorlevel% GTR 0 goto err
cls
if not exist desktop.ini echo 此文件夹未曾伪装过,不需要解除伪装操作。 & pause>nul & goto jcwz
del /f /q /a desktop.ini
attrib -s %lujing%
echo.
echo  ======================================
echo.
echo     文件夹[%lujing%]已成功解除伪装!
echo.
echo  ======================================
echo.
pause>nul
goto 5
:err
cls
echo.
echo  ======================================
echo.
echo     :) 出错了!
echo.
echo     原因是:您输入的“%lujing%”不是有效的文件夹路径,请检查后再试。建议用拖放的方式自动输入待伪装文件夹的路径。
echo.
echo  ======================================
echo.
echo     按任意键返回菜单
pause>nul
goto jcwz

作者: 379184514     时间: 2008-11-9 13:51
我还没学批处理,只是遇到什么查什么,不好意思,让高手见笑了
作者: weasel     时间: 2008-11-11 10:24
谢谢15楼,学习了
作者: HAT     时间: 2008-11-11 10:30    标题: Re 16楼

每个人都是从不会到会一路走过来的
多看教程:批处理室教程收集专用帖
作者: ccily2701     时间: 2008-11-11 12:36
哇~~~  真好。。。。。

[ Last edited by ccily2701 on 2008-11-14 at 12:15 ]