无忧启动论坛

标题: 怎样在资源管理器里隐藏指定的分区盘符 [打印本页]

作者: 2013kyj    时间: 2023-8-26 19:49
标题: 怎样在资源管理器里隐藏指定的分区盘符
本帖最后由 2013kyj 于 2023-8-26 19:51 编辑

我的电脑上有C盘, D盘, E盘, 打开我的电脑后, 就能看见它们的图标和盘符, 我想隐藏E盘的图标和盘符,
但是我又希望能用命令行来打开E盘, 或者在资源管理器的地址栏上输入E:回车也能打开E盘,  这样不就可以实现变相加密了吗,

我说的隐藏其实指的是伪隐藏

不知道能不能实现, 求路过大佬指导, 感谢


作者: zhuya219    时间: 2023-8-26 20:24
本帖最后由 zhuya219 于 2023-8-26 21:13 编辑

隐藏硬盘2.rar (279.49 KB, 下载次数: 45) ,可以用命令行了,看说明。
作者: 201027149    时间: 2023-8-26 20:25
DiskGenius 选中目标分区,隐藏即可。
作者: wsdyleon    时间: 2023-8-26 20:35
BOOTICE有分区管理功能,隐藏分区或者不分配盘符。
但是感觉有点bug,有时候都隐藏才有效果
作者: 2013kyj    时间: 2023-8-26 20:37
zhuya219 发表于 2023-8-26 20:24
拿去玩

谢大佬, 试了一下, 需要注销或重启才行, 这是大佬的杰作吗?
要是有命令行 + 不注销就能生效就好了
作者: szwp    时间: 2023-8-26 20:41
去学diskpart
作者: wsasecy    时间: 2023-8-26 20:48
  再骗也骗不过磁盘管理。现在可能没谁还想起有脱机这个玩意吧?直接脱机糊弄糊弄即可。
作者: zhuya219    时间: 2023-8-26 20:49
2013kyj 发表于 2023-8-26 20:37
谢大佬, 试了一下, 需要注销或重启才行, 这是大佬的杰作吗?
要是有命令行 + 不注销就能生效就好了

不注销其实也是可以的~~不影响
作者: fulibo    时间: 2023-8-26 21:01
上次在一个贴子里面看到过!
没收藏!
百度一下吧!
作者: 2013kyj    时间: 2023-8-26 21:06
zhuya219 发表于 2023-8-26 20:49
不注销其实也是可以的~~不影响

不注销不行, 另外, 好像复制粘贴不能用了, 我装着影子系统重启后正常了
作者: 2013kyj    时间: 2023-8-26 21:07
szwp 发表于 2023-8-26 20:41
去学diskpart

我说的隐藏是伪隐藏, 隐藏的盘,在地址栏输入盘符: 回车, 可以打开才行
作者: szwp    时间: 2023-8-26 21:08
mountvol  start
作者: 2013kyj    时间: 2023-8-26 21:08
fulibo 发表于 2023-8-26 21:01
上次在一个贴子里面看到过!
没收藏!
百度一下吧!

搜索了很多资料了, 没找到有用的信息
作者: 2013kyj    时间: 2023-8-26 21:09
zhuya219 发表于 2023-8-26 20:24
拿去玩

大佬这个工具是您开发的吗?  实现起来很难吗? 有源代码吗?  
作者: zhuya219    时间: 2023-8-26 21:17
本帖最后由 zhuya219 于 2023-8-26 21:49 编辑
2013kyj 发表于 2023-8-26 21:09
大佬这个工具是您开发的吗?  实现起来很难吗? 有源代码吗?

支持命令行了,重新下载就行了;“不注销不生效”有的系统会这样,你出现的复制粘贴不好使了我这里没发生这个情况。

源代码就是把盘符的值写到注册表这个键值里
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\NoDrives
的值来隐藏的。

不过ABCDEF......到Z盘符和多盘组合代码键值还会挺麻烦的,还是直接用这个工具吧。
你如果想固定隐藏哪个盘可以隐藏后去找这个注册项,然后自己写注册项也是可以的。
作者: nttwqz    时间: 2023-8-26 21:29
组策略好像有这个功能,XP时代研究过,你找找。
作者: 2013kyj    时间: 2023-8-26 21:34
本帖最后由 2013kyj 于 2023-8-26 21:35 编辑
zhuya219 发表于 2023-8-26 21:17
支持命令行了,重新下载就行了;“不注销不生效”有的系统会这样,你出现的复制粘贴不好使了我这里没发生 ...

我没有注销和重启, 按F5 有时盘符会出显示出来, 再按F5又消失, 随机, 没有规律
我的想法是, 命令行执行后, 盘符安静的, 自动消失

作者: 2013kyj    时间: 2023-8-26 21:37
szwp 发表于 2023-8-26 21:08
mountvol  start

请教大佬, 这个命令做什么的, 执行后没有反应
作者: zhuya219    时间: 2023-8-26 21:37
2013kyj 发表于 2023-8-26 21:34
我没有注销和重启, 按F5 有时盘符会出显示出来, 再按F5又消失, 随机, 没有规律
我的想法是, 命令行执行 ...

是这样的,只有注销后才正常,不过用户一般不会一直去刷新那个东西。
那你试试结束explorer吧,我记得结束explorer也好使(但是对实际用户不友好)。
作者: 2013kyj    时间: 2023-8-26 21:39
zhuya219 发表于 2023-8-26 21:17
支持命令行了,重新下载就行了;“不注销不生效”有的系统会这样,你出现的复制粘贴不好使了我这里没发生 ...

设置隐藏后, 没有重启, 然后设置取消隐藏, 不管怎么刷新都出不来了我装的是影子系统, 重启后正常了

作者: 2013kyj    时间: 2023-8-26 21:43
zhuya219 发表于 2023-8-26 21:17
支持命令行了,重新下载就行了;“不注销不生效”有的系统会这样,你出现的复制粘贴不好使了我这里没发生 ...

如果是通过更改注册表实现的,
我记得在哪里看到过, 不用重启或刷新注册表就可以生效, 好像也不用重启explorer进程
作者: zhuya219    时间: 2023-8-26 21:46
2013kyj 发表于 2023-8-26 21:39
设置隐藏后, 没有重启, 然后设置取消隐藏, 不管怎么刷新都出不来了我装的是影子系统, 重启后正常了

所以我说一般用户会按照提示注销后就正常,因为windows有些注册表更改后不是及时生效的。
写注册项后我用了一个发消息通知的办法让我的电脑界面刷新显示,但是你总去刷新的话就会显示没隐藏的样子。所以最好是设置完就不管它了,然后下次重启时它就自动隐藏了,同理恢复显示。

你说的不重启注册表也可以生效的办法只适用于部分地方,这个肯定是不好使的,我查过。
作者: 2013kyj    时间: 2023-8-26 21:56
zhuya219 发表于 2023-8-26 21:46
所以我说一般用户会按照提示注销后就正常,因为windows有些注册表更改后不是及时生效的。
写注册项后我 ...

找到一个文章
https://blog.csdn.net/weixin_43066097/article/details/102470776
作者: 2013kyj    时间: 2023-8-26 22:02
wsasecy 发表于 2023-8-26 20:48
再骗也骗不过磁盘管理。现在可能没谁还想起有脱机这个玩意吧?直接脱机糊弄糊弄即可。

还真是骗不过磁盘管理, 脱机能脱指定的分区吗?
作者: 2013kyj    时间: 2023-8-26 22:04
nttwqz 发表于 2023-8-26 21:29
组策略好像有这个功能,XP时代研究过,你找找。

多谢大佬指导, 组策略好像也是修改的注册表
作者: szwp    时间: 2023-8-26 22:23
将盘符删了,mountvol结果复制过来
作者: rrrnnn    时间: 2023-8-26 22:28
你把盘符删了用硬盘管理类软件可以打开查看文件这样最好。你的目的是想隐藏资源管理器的分区列表的某个分区,但实际这个分区是存在的,这样的话容易出现BUG
作者: 2013Varg    时间: 2023-8-26 22:33
把盘符删了然后挂在ntfs目录里
作者: uvwlab    时间: 2023-8-26 22:44
同上,2行代码解决
作者: ppll2030    时间: 2023-8-26 22:50
本帖最后由 ppll2030 于 2023-8-26 22:52 编辑

如果只是考虑资源管理器,那就首选注册表了。
不过这类对第三方也是无效滴。不过玩玩无伤大雅

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer]
"NoDrives"=hex:10,00,00,00     【这个表示隐藏盘符,但可通过地址栏访问。符合你的要求。
"NoViewOnDrive"=hex:10,00,00,00   【 这个表示拒绝访问盘符,地址栏也不行。属于进阶要求。
一个负责隐藏,一个负责访问。自己看情况选择吧。

附部分盘符的十六位进制对照表。
C:04000000 D:08000000 E:10000000 F:20000000
G:40000000 H:80000000 I:00010000 J:00020000
K:00040000 L:00080000 M: 00100000 N:00200000

对了。既然是注册表。直接重启explorer就可以生效了。







作者: tt911    时间: 2023-8-26 23:35
WinHEX修改磁盘头,还能改到打不开,没分过区的样子。
楼上你就瞎折腾吧。
作者: zhuya219    时间: 2023-8-26 23:36
ppll2030 发表于 2023-8-26 22:50
如果只是考虑资源管理器,那就首选注册表了。
不过这类对第三方也是无效滴。不过玩玩无伤大雅

...

多盘组合需要加减进制 稍微麻烦点
作者: 2013kyj    时间: 2023-8-26 23:45
ppll2030 发表于 2023-8-26 22:50
如果只是考虑资源管理器,那就首选注册表了。
不过这类对第三方也是无效滴。不过玩玩无伤大雅

...

多谢解析
作者: 2013kyj    时间: 2023-8-26 23:47
zhuya219 发表于 2023-8-26 23:36
多盘组合需要加减进制 稍微麻烦点

大佬, 能告知一下你用的什么方法刷新的吗? 用你小工具隐藏, 好像过一会儿就没有盘符了, 要等会儿, 网上分享的那些刷新方法的确在这里都不灵
作者: szwp    时间: 2023-8-27 06:35
盘符删了,不用盘符访问
作者: lonny888    时间: 2023-8-27 07:18
我的电脑右键--属性--管理---磁盘管理,右键E盘---更改驱动器号,选择装入到其它文件夹或盘符,或者删除驱动器号
作者: martin313    时间: 2023-8-27 07:39
这个应用场景是?

看楼主蛮执着的

推荐  Folder Guard
作者: yyz2191958    时间: 2023-8-27 07:43
201027149 发表于 2023-8-26 20:25
DiskGenius 选中目标分区,隐藏即可。

+1
作者: 窄口牛    时间: 2023-8-27 07:46
早年给医院做的系统就是酱紫,有些东西是必定要保留的就保存在隐藏了的分区里,别的可见分区均是还原的。另外就是软驱,有段时间已经淘汰,但主板上还有,也是要隐藏的。
作者: ppll2030    时间: 2023-8-27 07:53
zhuya219 发表于 2023-8-26 23:36
多盘组合需要加减进制 稍微麻烦点

楼主的需求没必要算来算去吧。
他的目的不就是想一键隐藏和显示盘符而已吗。
一次算好就行了。
作者: ppll2030    时间: 2023-8-27 07:58
martin313 发表于 2023-8-27 07:39
这个应用场景是?

看楼主蛮执着的

他属于那种又菜又喜欢玩的玩家。
我猜是命令行对于他有种不能自拔的神秘感。
作者: yzw92    时间: 2023-8-27 08:00
谢谢楼主分享
作者: martin313    时间: 2023-8-27 08:41
tt911 发表于 2023-8-26 23:35
WinHEX修改磁盘头,还能改到打不开,没分过区的样子。
楼上你就瞎折腾吧。


好啊,这个主意好
但风险很大
作者: schdtv    时间: 2023-8-27 09:16
问题解决了吗?
作者: 201027149    时间: 2023-8-27 09:34
201027149 发表于 2023-8-26 20:25
DiskGenius 选中目标分区,隐藏即可。

简单的事,不用搞复杂化。  开始就已经回复过了,如图所示


作者: yyz2191958    时间: 2023-8-27 09:35
试一试:复制一个 pecmd.exe 到批处理目录,修改一下下面的bat(这个是对移动硬盘的,所以需要修改
::【隐藏-显示 移动硬盘 隐藏分区】
@echo Off
COLOR 2F
Set Prog=           移动硬盘
Set L1=              ╭══════════════════╮
Set L2=              ║                  ║
Set L3=           ╭══┤ %Prog%               ├══╮
Set L4=           ║  ║                  ║  ║
Set L5=           ║  ╰══════════════════╯  ║
Set L6=           ║                        ║
Set L7=           ╰════════════════════════╯
Title %Prog%

:A
CLS
Title %Prog%——————显示隐藏分区、隐藏隐藏分区
Echo.
Echo %L1%
Echo %L2%
Echo %L3%
Echo %L4%
Echo %L5%
Echo %L6%
Echo            ║         [1] 显示移动硬盘隐藏分区              ║
Echo %L6%            
Echo            ║         [2] 隐藏移动硬盘隐藏分区              ║
Echo            ║                                               ║
Echo %L7%
Echo.
Set Choice=
Set /P Choice=   请选择要进行的操作 (1/2) ,然后按回车(两次):
If "%Choice%"=="" Goto :A
If Not "%Choice%"=="" Set Choice=%Choice:~0,1%
If /I "%Choice%"=="1" Goto :B
If /I "%Choice%"=="2" Goto :C
Goto :A

:B
Echo ********************************************************************************
Echo.
Echo.
Echo                              确认选择 1 ?
PAUSE>NUL
::【指派移动硬盘第二分区盘符为:R(能看到隐藏分区为:R盘)】
Pecmd.exe SHOW U:2,R
start "" R:
Goto :A

:C
Echo ********************************************************************************
Echo.
Echo.
Echo                              确认选择 2 ?
PAUSE>NUL
::【卸载移动硬盘R分区(即:R盘恢复为——不可见)】
Pecmd.exe subj R:
Exit


作者: 呵呵#1861    时间: 2023-8-27 09:55
学习一下
作者: szwp    时间: 2023-8-27 13:53
将mountvol的结果发上来,有盘符和无盘符都发。
作者: szwp    时间: 2023-8-27 13:54
start \\?\Volume{ID}\
作者: ddzyhhh    时间: 2023-8-27 14:05



磁盘隐藏禁用工具1.0.rar (246.68 KB, 下载次数: 21)

作者: szwp    时间: 2023-8-27 14:08
for /f %? in ('mountvol^|findstr ?') do start %?
作者: lianmeng    时间: 2023-8-27 14:39
我是这样,不想让人随便看到的东西(其实也是扯淡),要想看就有办法看到。建个VHD把东西放里面然后隐藏文件夹,需要时右键显示隐藏文件即可。
作者: rui-rui    时间: 2023-8-27 14:41
本帖最后由 rui-rui 于 2023-8-27 14:44 编辑

我是这样改的:
:: 隐藏G盘
%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(window.close)&&exit
mountvol G: /d

恢复是这样:
@echo off
:: 恢复G盘
%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(window.close)&&exit
setlocal ENABLEDELAYEDEXPANSION
set n=0
for /f "delims=" %%c in ('
        ^(
                for %%r in ^(
                        "select volume 2"
                        "assign letter=G"
                ^) do @^(
                        echo %%~r
                ^)
        ^)^|diskpart
') do (
        if "%%c"=="DISKPART> " (
                set /a n+=1
                echo.
                echo.
                echo **** 第 !n! 条 DISKPART 指令 *************************
                echo.
        )  else (
           if !n! geq 1    echo %%c
        )
)
set /a n-=1
echo 共运行了 !n! 条指令.
exit

几条命令解决。

作者: shy20070509    时间: 2023-8-27 15:05
可以通过修改注册表实现,但是要根据需要隐藏的盘符来计算组合的键值
作者: szwp    时间: 2023-8-27 16:14
lianmeng 发表于 2023-8-27 14:39
我是这样,不想让人随便看到的东西(其实也是扯淡),要想看就有办法看到。建个VHD把东西放里面然后隐藏文 ...

再加上bitlocker
作者: ppll2030    时间: 2023-8-27 20:22
ddzyhhh 发表于 2023-8-27 14:05

厉害啊。比我的批处理黑窗口好多了
作者: 2275385864    时间: 2023-8-27 21:11
以前有保存一份批处理 可禁用或隐藏指定分区,运行完了需要注销或重启也可以在返回里面加入一条自动重启explorer的命令
taskkill /f /im explorer.exe & start explorer

@echo off
mode con cols=45 lines=13
echo.
title 禁用或隐藏任意分区
set l1=        如果需要继续其他操作请选择y
set l2=             按任意键退出,感谢使用!

:main
cls
color 0c
echo.
echo              隐藏或禁用任意分区
echo.
echo.
echo          1. 禁用任意分区
echo          2. 解除禁用任意分区
echo          3. 隐藏任意分区
echo          4. 解除隐藏任意分区
echo          5. 按任意键退出
echo.
SET verybat=
SET /P verybat=     请选择要进行的操作:  
IF /I '%verybat:~0,1%'=='1' GOTO 1
IF /I '%verybat:~0,1%'=='2' GOTO 2
IF /I '%verybat:~0,1%'=='3' GOTO 3
IF /I '%verybat:~0,1%'=='4' GOTO 4
exit

:1
cls
color 4f
set regadd=reg add HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer
echo.&echo.&echo.&echo.
set /p dirv1=    请选择你要禁用的分区:
set num=2
set str=c d e f g h i j k l m n o p q r s t u v w x y z
for %%i in (%str%) do (
    set /a num*=2
    if /i "%%i"=="%dirv1%" goto forbid
)

:forbid
%regadd% /v NoViewOnDrive /t REG_DWORD /d %num% /f
gpupdate.exe /force >nul
cls
echo.
echo         已成功禁用了"%dirv1%:"分区
echo. && echo %l1% && echo. && echo %l2% && echo.
set jx=
set /p jx=  请选择:
if /i "%jx%"=="y" goto main
exit

:2
reg delete HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer /v NoViewOnDrive /f >nul 2>nul
gpupdate /force >nul
cls
color 2f
echo.
echo   已成功解除任意分区的禁用。
echo. && echo %l1% && echo. && echo %l2% && echo.
set jx=
set /p jx=  请选择:
if /i "%jx%"=="y" goto main
exit

:3
set regadd=reg add HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer
cls
color f9
echo.&echo.&echo.&echo.
set /p dirv2=    请选择你要隐藏的分区:
set num=2
set str=c d e f g h i j k l m n o p q r s t u v w x y z
for %%i in (%str%) do (
    set /a num*=2
    if /i "%%i"=="%dirv2%" goto hide
)
:hide
%regadd% /v NoDrives /t REG_DWORD /d %num% /f
gpupdate /force >nul
cls
color f5
echo.
echo       已成功隐藏了"%dirv2%:"分区
echo. && echo %l1% && echo. && echo %l2% && echo.
set jx2=
set /p jx2=  请选择:
if /i "%jx2%"=="y" goto main
exit

:4
cls
color 1f
reg delete HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer /v NoDrives /f >nul 2>nul
gpupdate /force >nul
echo.
echo      已成功解除任意分区的隐藏。
echo. && echo %l1% && echo. && echo %l2% && echo.
set jx2=
set /p jx2=  请选择:
if /i "%jx2%"=="y" goto main
exit



作者: megatron    时间: 2023-8-28 10:47
看看隐藏的方法
作者: hycsl888    时间: 2023-8-28 11:02
我记得用注册表就可以实现。。
然后还可以访问。。
作者: sulong    时间: 2023-8-28 11:34
ppll2030 发表于 2023-8-26 22:50
如果只是考虑资源管理器,那就首选注册表了。
不过这类对第三方也是无效滴。不过玩玩无伤大雅

...

用注册表挺好,谢谢说明
作者: 2012dreamscd    时间: 2023-9-1 11:21
201027149 发表于 2023-8-27 09:34
简单的事,不用搞复杂化。  开始就已经回复过了,如图所示

试了几个版本的DiskGenius都无法和你的一样隐藏,请分享一下你的DiskGenius和系统版本,谢谢




欢迎光临 无忧启动论坛 (http://wuyou.net/) Powered by Discuz! X3.3