中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-03 11:58
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 文件夹伪装与解伪装 批处理 查看 2,183 回复 18
楼 主 文件夹伪装与解伪装 批处理 发表于 2008-11-06 19:03 ·  中国 山东 日照 联通
初级用户
积分 25
发帖 17
注册 2008-10-06 20:32
17年会员
UID 127585
性别 男
状态 离线
利用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 >>%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 ]
本帖最近评分记录 (共 2 条) 点击查看详情
评分人分数时间
tireless +1 2008-11-06 19:32
HAT +2 2008-11-07 12:44
2 发表于 2008-11-06 19:55 ·  中国 江西 赣州 安远县 电信
银牌会员
★★★★
积分 2,025
发帖 1,122
注册 2007-09-05 20:15
18年会员
UID 96653
性别 男
状态 离线
经测试,只需文件夹属性为 s 就行了。

伪装:
@echo off
attrib +s %1
more +3 < %0 > "%~1\desktop.ini" & exit /b

CLSID={21ec2020-3aea-1069-a2dd-08002b30309d}


恢复就去掉 s 属性。
3 发表于 2008-11-06 21:11 ·  中国 重庆 电信
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
19年会员
UID 89899
性别 男
状态 离线
系统属性应该是包含了隐藏属性和只读属性的吧
4 发表于 2008-11-06 21:30 ·  中国 江西 赣州 安远县 电信
银牌会员
★★★★
积分 2,025
发帖 1,122
注册 2007-09-05 20:15
18年会员
UID 96653
性别 男
状态 离线
 
C:\>md test

C:\>attrib test
C:\test

C:\>attrib +s test

C:\>attrib test
S C:\test

C:\>
5 发表于 2008-11-06 21:33 ·  中国 重庆 电信
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
19年会员
UID 89899
性别 男
状态 离线
我是说从对用户造成的结果来看,系统属性应该是包含了隐藏属性和只读属性的吧
6 发表于 2008-11-06 22:41 ·  中国 江西 赣州 安远县 电信
银牌会员
★★★★
积分 2,025
发帖 1,122
注册 2007-09-05 20:15
18年会员
UID 96653
性别 男
状态 离线
Originally posted by HAT at 2008-11-6 09:33 PM:
我是说从对用户造成的结果来看,系统属性应该是包含了隐藏属性和只读属性的吧

不明白
7 发表于 2008-11-06 23:44 ·  中国 广东 韶关 电信
高级用户
★★★
CMD感染者
积分 691
发帖 383
注册 2008-05-23 00:38
18年会员
UID 119451
性别 男
状态 离线
后2句只需:
attrib +s +h %1\desktop.ini
attrib +s %1

就可以了
8 发表于 2008-11-07 00:17 ·  中国 江西 赣州 安远县 电信
银牌会员
★★★★
积分 2,025
发帖 1,122
注册 2007-09-05 20:15
18年会员
UID 96653
性别 男
状态 离线
呃..其实何必这样,直接重命名文件夹,给它加上“后缀名”不就行了?如:
ren test test.{21ec2020-3aea-1069-a2dd-08002b30309d}
9 发表于 2008-11-07 11:07 ·  中国 山东 日照 联通
初级用户
积分 25
发帖 17
注册 2008-10-06 20:32
17年会员
UID 127585
性别 男
状态 离线
我也不是很清楚,只是为了以防万一全加上了,只是简单实现功能,未做优化
10 发表于 2008-11-07 11:11 ·  中国 山东 日照 联通
初级用户
积分 25
发帖 17
注册 2008-10-06 20:32
17年会员
UID 127585
性别 男
状态 离线
Originally posted by tireless at 2008-11-7 00:17:
呃..其实何必这样,直接重命名文件夹,给它加上“后缀名”不就行了?如:
ren test test.{21ec2020-3aea-1069-a2dd-08002b30309d}

只是改名的话,会有后缀名,而且在windows下就很容易改回来,过于简单。我上面这个显示的名字跟普通文件夹一样,只是图标不同
本帖最近评分记录 (共 1 条) 点击查看详情
评分人分数时间
tireless +1 2008-11-07 11:29
11 发表于 2008-11-07 15:16 ·  中国 重庆 沙坪坝区 电信
新手上路
积分 11
发帖 11
注册 2008-11-07 14:45
17年会员
UID 130285
性别 男
状态 离线
autorun经常这样干
12 发表于 2008-11-07 19:40 ·  中国 山东 日照 联通
初级用户
积分 25
发帖 17
注册 2008-10-06 20:32
17年会员
UID 127585
性别 男
状态 离线
双重伪装
名字改为
nul.{21ec2020-3aea-1069-a2dd-08002b30309d}
13 发表于 2008-11-07 19:45 ·  中国 江西 赣州 安远县 电信
银牌会员
★★★★
积分 2,025
发帖 1,122
注册 2007-09-05 20:15
18年会员
UID 96653
性别 男
状态 离线
Originally posted by 379184514 at 2008-11-7 07:40 PM:
双重伪装
名字改为
nul.{21ec2020-3aea-1069-a2dd-08002b30309d}

如何改?
14 发表于 2008-11-07 20:15 ·  中国 山东 日照 联通
初级用户
积分 25
发帖 17
注册 2008-10-06 20:32
17年会员
UID 127585
性别 男
状态 离线
不好意思,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}\等高人想办法吧
15 发表于 2008-11-07 21:22 ·  中国 重庆 联通
中级用户
★★
积分 363
发帖 162
注册 2007-04-22 21:31
19年会员
UID 86104
性别 男
状态 离线
以前刚学批处理时写的

: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
>>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 文件夹伪装成功!
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
>>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 文件夹伪装成功!
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
>>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 文件夹伪装成功!
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
>>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 文件夹伪装成功!
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
>>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 文件夹伪装成功!
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
>>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 文件夹伪装成功!
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
>>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 文件夹伪装成功!
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
>>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 文件夹伪装成功!
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 文件夹已成功解除伪装!
echo.
echo ======================================
echo.
pause>nul
goto 5
:err
cls
echo.
echo ======================================
echo.
echo :) 出错了!
echo.
echo 原因是:您输入的“%lujing%”不是有效的文件夹路径,请检查后再试。建议用拖放的方式自动输入待伪装文件夹的路径。
echo.
echo ======================================
echo.
echo 按任意键返回菜单
pause>nul
goto jcwz
本帖最近评分记录 (共 1 条) 点击查看详情
评分人分数时间
HAT +4 2008-11-07 21:24
论坛跳转: