为Microsoft DiskPart添加了一个 GUI
在某的带节奏下,坛子里面看最近大家很有劲在学习mbr,uefi,refs……但是也不乏歪嘴和尚念歪经,能熟练使用diskpart,就不会说出这些奇奇怪怪的话。
所以,分享个小工具,为Microsoft DiskPart添加了一个 GUI。可能能帮到谁,使用不当有危险,谨慎操作哈
https://www.123pan.com/s/dBlpjv-HyqMd.html
UXPC
https://yun.139.com/shareweb/#/w/i/145C7Zxj47PiF
WNH3
{:9_352:}
format label=EFI fs=fat32 本帖最后由 rubycon 于 2025-4-8 23:04 编辑
有了不错的 diskgenius Pro,这个不比 diskpart 更好一些么?
可以使用 diskgenius Pro 给 esp 分配盘符,然后设置卷标的了。
支持原创。感谢楼主共享! 功能不太行啊,比如创建recovery分区,Oem分区,restrory分区,好象都不能实现,还有GPT普通分区和OEM,恢复分区等互相转换功能都没看到
加游,升级到3.0,实现更多功能 rubycon 发表于 2025-4-8 23:03
有了不错的 diskgenius Pro,这个不比 diskpart 更好一些么?
可以使用 diskgenius Pro 给 esp 分配盘符, ...
你永远不会明白原生产品与三方的区别 感谢分享啊 lrjycyz 发表于 2025-4-9 01:56
你永远不会明白原生产品与三方的区别
支持这个观点。
通常本人在有原生程序情况下就不会去使用第三方的程序。“DiskPart”这个命令行我经常使用,安装系统从来都是使用安装程序分区而绝不使用那些第三方的工具。 chzc 发表于 2025-4-9 07:12
支持这个观点。
通常本人在有原生程序情况下就不会去使用第三方的程序。“DiskPart”这个命令行我 ...
diskpart 能超越专业的磁盘分区软件 diskgenius pro 么? lrjycyz 发表于 2025-4-9 01:56
你永远不会明白原生产品与三方的区别
diskpart 能超越专业的磁盘分区软件 diskgenius pro 么?
diskpart 难学难用,一个不小心,数据就灰飞烟灭了。 chzc 发表于 2025-4-9 07:12
支持这个观点。
通常本人在有原生程序情况下就不会去使用第三方的程序。“DiskPart”这个命令行我 ...
谢谢。我本来就是表达,通过DiskPart,可以更好的去认知学习理清,分区类型,分区属性,引导模式,文件系统等等,三方GUI只是锦上添花,但是三方GUI需要运行环境支持,例如最低需要PE吧?而DiskPart有命令行环境就能干,类似以前FDISK,但强大了非常多
diskpart | Microsoft Learn
lrjycyz 发表于 2025-4-9 07:41
谢谢。我本来就是表达,通过DiskPart,可以更好的去认知学习理清,分区类型,分区属性,引导模式,文件系 ...
cmd 窗口也是运行在 Windows PE 上的了。 我的这没有GUI,纯批处理,可以自行修改
@echo off
setlocal enabledelayedexpansion
:: 常量定义
set ESP_SIZE=260
set MSR_SIZE=128
set RECOVERY_SIZE=1024
:: 显示磁盘列表
echo list disk | diskpart
:: 选择目标磁盘
:select_disk
set /p "target_disk=请输入磁盘编号(例如 0): "
:: 验证磁盘存在(基础验证)
echo list disk | diskpart | find " %target_disk% " >nul || (
echo 错误:无效的磁盘编号
goto select_disk
)
:: 输入C盘大小
:input_c
echo --------------------------
echo.
echo 整 G 分区:10G---10245M 20G---20482M 40G---40963M 50G---51208M 60G---61444M 80G---81926M
echo.
echo 整 G 分区:100G---102407M 150G---153606M 200G---204806M 250G---256005M 300G---307204M
echo.
set "c_size="
set /p "c_size=请输入C盘大小(MB,直接回车自动分配剩余空间): "
:: 数字验证(基础版)
if defined c_size (
set "valid=1"
for /l %%i in (0,1,15) do (
set "char=!c_size:~%%i,1!"
if defined char (
if "!char!" lss "0" set "valid=0"
if "!char!" gtr "9" set "valid=0"
)
)
if !valid! neq 1 (
echo 错误:输入必须为纯数字
goto input_c
)
)
:: 生成diskpart脚本
set "script=%temp%\auto_part.txt"
( echo select disk %target_disk%
echo clean
echo convert gpt
echo create partition efi size=%ESP_SIZE%
echo format quick fs=fat32 label="System"
echo assign letter="S"
echo create partition msr size=%MSR_SIZE%
) > "%script%"
if defined c_size (
( echo create partition primary size=%c_size%
echo format quick fs=ntfs label="Windows"
echo assign letter=W
echo create partition primary
echo shrink minimum=%RECOVERY_SIZE%
echo format quick fs=ntfs label="DATA"
echo assign letter=Z
) >> "%script%"
) else (
( echo create partition primary
echo shrink minimum=%RECOVERY_SIZE%
echo format quick fs=ntfs label="Windows"
echo assign letter=W
) >> "%script%"
)
( echo create partition primary
echo format quick fs=ntfs label="Recovery"
echo assign letter=R
echo set id="de94bba4-06d1-4d40-a16a-bfd50179d6ac"
echo gpt attributes=0x8000000000000001
echo list volume
) >> "%script%"
:: 执行分区操作
echo.
echo 正在执行分区操作...
diskpart /s "%script%"
del "%script%"
echo.
echo --------------------------
echo 操作完成!
echo --------------------------
pause
rubycon 发表于 2025-4-9 08:02
cmd 窗口也是运行在 Windows PE 上的了。
滚犊子去,开机F8键经常从命令行用这个 只用diskpart命令行的飘过 diy371 发表于 2025-4-9 14:15
只用diskpart命令行的飘过
diskpart 比 diskgenius pro 还强大了么? 楼主发这些东东;精神可嘉;这个论坛,感觉好像已经带偏了(自己认为);算了,不说了。 可以的lz 你的劳动成果是有价值的 这是C#开发的吗 fuyechun 发表于 2025-4-9 08:16
我的这没有GUI,纯批处理,可以自行修改
好奇整数分区的计算公式,听说这个和分区对齐还有簇大小还是扇区有关?
页:
[1]
2