这款U盘启动制作工具使用C#编写,运行环境需要 Microsoft .NET Framework 2

支持Windows XP、2003、7、8、8.1、10、11

特点

  1. 支持“三分区”、“双分区”、“单分区”制作模式;
  2. 支持无损安装和无损还原(仅“三分区”模式下可用);
  3. 支持数据分区和EFI分区更换前后位置(仅“双分区”模式下可用);
  4. 支持以oscdimg和mkisofs方式生成ISO镜像文件;
  5. 支持以UltraISO方式写入U盘;
  6. 多种运行方式:跟ISO文件同目录、可将安装器内置到ISO并挂载后制作(仅Windows自带的挂载功能);
  7. 带实时日志,硬核风,没有套路,所有操作指令全部输出;
  8. 支持背景音乐;
  9. 强大的自定义功能,轻松打造属于你的启动盘制作工具;

image.webp

image.webp

自定义参数

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <appSettings>
    <!--默认打开的界面是否收缩     1:收缩  0:展开-->
    <add key="FormStyle" value="0"></add>
    
    <!--是否播放背景音乐     1或以上:播放次数  0:不播放-->
    <add key="BackgroundMusic" value="0"></add>

    <!--背景音乐音频文件相对路径(文件不存在时不播放) -->
    <add key="AudioFile" value="music.wav"></add>

    <!--背景图片相对路径,为空值时关闭背景图片功能。-->
    <add key="BackgroundImage" value="BackgroundImage.png"></add>

    <!--第三方程序压缩包文件相对路径。-->
    <add key="BasicFile" value="bin.zip"></add>
    
    <!--软件标题-->
    <add key="FormTitleText" value="USB启动盘制作工具"></add>

    <!--软件标题右侧是否显示“About”超链接     1:显示  0:隐藏-->
    <add key="ShowAbout" value="1"></add>

    <!--软件标题右侧显示的“About”超链接地址-->
    <add key="AboutUrl" value="https://ccpe.net"></add>

    <!--更换“安装资源信息:”本文标签内容,可为空-->
    <add key="ISOInfoText" value="安装资源:"></add>
    
    <!--ISO目录资源标记文件。如果在上级目录找到该文件,则认为当前程序运行在解压后的ISO目录中-->
    <add key="ISOFlagFile" value="version.txt"></add>

    <!--显示安装资源信息。如果在上级目录找到资源标记文件,则读取指定文本内容之后的字符串并显示在程序的“安装资源信息”中-->
    <add key="ISOFlagFileValue" value="version="></add>
    
    <!--手动指定安装资源信息的值,此设置的值不为空时优先展示-->
    <add key="ISOInfo" value=""></add>

    <!--待制作的ISO文件相对路径-->
    <add key="ISOFileName" value="usb_boot.iso"></add>

    <!--Fbinst启动数据文件相对路径-->
    <add key="FbinstFileName" value="ud.fba"></add>

    <!--默认选定的制作方式     1:单分区(Data)  2:双分区(Data + EFI)  3:三分区(Fbinst + Data + EFI)-->
    <add key="MakeType" value="3"></add>
    
    <!--生成ISO的默认标签,如果空值,则默认使用“USB_BOOT”-->
    <add key="ISOVolume" value="USB_BOOT"></add>

    <!--待生成的ISO文件名-->
    <add key="MakeISOFileName" value="usb_boot"></add>

    <!--oscdimg方式生成ISO文件时,LegacyBIOS引导文件路径-->
    <add key="BootFileName1" value="Boot\etfsboot.com"></add>
    
    <!--mkisofs方式生成ISO文件时,LegacyBIOS引导文件路径-->
    <add key="BootFileName2" value="grldr"></add>

    <!--生成ISO文件时,UEFI引导文件路径-->
    <add key="EFIBootFileName" value="EFI\microsoft\boot\efisys.bin"></add>

    <!--LegacyBIOS主引导记录安装工具,用于双分区和单分区制作模式,可选值:grubinst, bootice-->
    <add key="MBRInstool" value="grubinst"></add>

    <!--LegacyBIOS主引导记录使用grubinst时的安装参数,用于双分区和单分区制作模式,仅MBRInstool值为grubinst时启用-->
    <add key="GrubInstParm" value="--skip-mbr-test --mbr-disable-floppy --boot-prevmbr-last -t=0 --g4d-version=0.4.6a"></add>
    
    <!--LegacyBIOS主引导记录,用于双分区和单分区制作模式,仅MBRInstool值为bootice时启用(双分区时由于会激活个人数据分区,所以不推荐使用nt52、nt60,以免找不到激活分区上的引导文件导致启动失败;使用GRUB4DOS时,需要手动去掉“优先尝试引导原来的MBR”)   可选值:wee, GRUB4DOS, grub2, 1jf9z, 1jf9k, plop, usbhdd+, usbzip+, nt52, nt60    可追加BOOTICE其他参数,例如使用GRUB4DOS时可追加:/boot_file=grldr /v046 /mbr-disable-floppy /mbr-disable-osbr-->
    <add key="MBRType" value="wee"></add>

    <!--LegacyBIOS分区引导记录,用于双分区和单分区制作模式,双分区时仅对物理分区1写入PBR,仅MBRInstool值为bootice时启用   可选值:msdos, GRUB4DOS, ntldr, bootmgr, syslinux    可追加BOOTICE其他参数,例如使用GRUB4DOS时可追加:/boot_file=grldr /v046-->
    <add key="PBRType" value="bootmgr"></add>
	  
    <!--是否在制作时判断Win8及以上系统就使用PowerShell命令挂载ISO文件方法导入数据(速度快,挂载成功时UEFIMode配置项无效,挂载失败会自动使用解压方式),否则直接解压ISO到临时目录后导入数据(速度慢)   1:使用  0:不使用-->
    <add key="MountISO" value="1"></add>

    <!--生成ISO文件时,默认使用oscdimg还是mkisofs (1:oscdimg   2:mkisofs   3:仅oscdimg   4:仅mkisofs)-->
    <add key="MakeISO" value="1"></add>  
	  
    <!--生成ISO文件时,使用oscdimg方式可追加的参数-->
    <add key="oscdimgParm" value="-m -u2 -udfver102"></add>

    <!--生成ISO文件时,使用mkisofs方式可追加的参数-->
    <add key="mkisofsParm" value="-d -N -R -J -boot-info-table -l -relaxed-filenames -gbk4dos-filenames -gbk4win-filenames -no-emul-boot -boot-load-size 4 -no-emul-boot"></add>

    <!--三分区方式无损或全新制作时,使用fbplus格式化磁盘可追加的参数,例如: ——chs  ——zip(使用时必须将—换成英文字符-)-->
    <add key="FbinstParm" value=""></add>
    
    <!--将EFI分区放到Data分区之前,仅双分区模式有效   1:开启   0:关闭-->
    <add key="EFIPartLeft" value="0"></add>
    
    <!--无损或全新制作时,右端分区比usb_boot.iso大多少MB(总大小不得大于4093MB)-->
    <add key="MoreISOSize" value="20"></add>

    <!--无损或全新制作时,右端分区比当程序运行在已释放ISO目录里时大多少MB(总大小不得大于4093MB)-->
    <add key="MoreDirSize" value="20"></add>

    <!--无损或全新制作时,左端分区比ud.fba文件大多少MB-->
    <add key="MoreFbaSize" value="10"></add>

    <!--无损或全新制作时,自动将右端分区固定为多少MB(必须小于或等于4093;不为空时忽略MoreISOSize和MoreDirSize设置,仅三分区和双分区模式有效,若ISO体积大于该值则该设置无效并使用上面两项设置)-->
    <add key="EFIPartSize" value="4093"></add>
    
    <!--无损或全新制作时设置的高端隐藏区卷标,最长11个字符,如果为空,程序会强制将卷标设置为myefi-->
    <add key="EFIVolumeName" value="myefi"></add>

    <!--全新制作时设置的个人数据区卷标,最长11个字符,如果为空,程序会强制将卷标设置为mydata-->
    <add key="DataVolumeName" value="mydata"></add>

    <!--关闭窗口时,需要结束进程的列表,以管道符“|”分割进程名-->
    <add key="KillProcessList" value="PartAssist.exe|PECMD32.EXE|PECMD64.EXE|fbplus.exe|BOOTICEx86.exe|BOOTICEx64.exe|7z.exe|grubinst.exe"></add>
    
  </appSettings>
<startup><supportedRuntime version="v2.0.50727"/></startup></configuration>

工具的自定义使用方法

  1. 请用文本编辑器打开MyBootMaker.exe.config,按里面说明做对应修改。
  2. 程序名称和配置文件名称可以在相同的情况下随意改动,比如改成:makeusb.exe、makeusb.exe.config

可以制作其它的ISO文件的前提条件

  1. 如果安装器运行在某文件夹下,且配置文件里没有配置ISO文件路径时,则检测上级目录是否存在指定标记文件,如果有标记文件,程序认为当前运行在已解压后的ISO文件夹里;
  2. ISO文件必须在镜像根目录有一个标记文件才能支持挂载安装,否则只能解压安装(当安装器配置了有效的iso且在上级目录检测到标记文件时,优先将iso作为安装源);
  3. 标记文件里面可以有一行特殊字符串,可以在安装器界面显示指定字符串信息;
  4. 请保证ISO是支持EFI启动的,安装器会检测EFI\boot\bootx64.efi文件是否存在,否则不认可ISO镜像有效;
  5. ISO必须支持LegacyBIOS和UEFI引导,EFI引导需有efisys.bin映像文件。

自助更新方法

由于本程序部分功能的实现依赖第三方程序,所以如果你在使用过程中,遇到了第三方程序返回的报错或导致各种异常情况的问题,请尝试更新bin.zip压缩包内的程序(比如分区助手),自己更新这部分程序后再尝试使用,有几率能解决问题。

即使本工具长时间不更新,但仍可以自己更新这些第三方程序来延长本工具的使用周期。

更新记录

2018-12-09[v1.0]:

  1. 添加了ISO和FBA文件的自定义配置;
  2. 调用解压和打包不会弹出命令行窗口了;
  3. 出现错误停止后续代码运行时会解冻控件;
  4. ud.fba文件更新为默认启动run自动菜单,可以手动找菜单加载;

2018-12-10[v1.1]:

  1. 修复无USB驱动器时的报错;

2018-12-11[v2.0]:

  1. 用.net2作为目标框架重写代码,不需要.net4环境了,也支持在WinXP下运行,在PE下运行时需要切换到administrator用户;
  2. 添加U+功能;
  3. 修复一些UI交互方面的BUG;

2018-12-12[v2.1]:

  1. 修复在无设备情况下导出ISO报错问题;
  2. 默认配置改成不播放背景音乐(不然Win10PE打不开安装器或报错),EFI分区补增的容量改成50MB,UD分区改为10MB;

2018-12-13[v2.2]:

  1. 修复点击导出ISO后没有禁用chs和usbzip勾选框问题;

2018-12-16[v2.3]:

  1. 修复ISO资源信息获取逻辑;
  2. 完善报错信息描述;

2018-12-17[v2.4]:

  1. 苹果UI风格;
  2. 按钮重新绘制;

2018-12-20[v2.5]:

  1. 修复在装载或解开ISO镜像文件安装时无法导入EFI区资源数据的问题;
  2. 修复USB磁盘列表下拉框内容显示不完整问题;

2018-12-24[v2.6]:

  1. 修复fbinst程序执行路径未加引号问题;
  2. 增加个人数据分区格式自定义功能;
  3. 增加重新分配U盘盘符功能;
  4. 无损制作时个人数据分区如果不支持无损转换将给出提示;

2018-12-28[v2.7]:

  1. UI交互逻辑完善;
  2. 分配盘符功能去除PECMD命令方式只保留分区助手的删增盘符命令,以避免搞乱本地硬盘盘符;

2018-12-30[v2.8]:

  1. 修复多个U盘时由于分区数据被重定向覆盖导致误操作其它U盘的问题;
  2. 修改UEFI引导切换的配置,现在默认不切换;

2019-01-02[v2.9]:

  1. ud.fba内置grldr菜单增加搜索隐藏区代码,更新grldr版本;
  2. 分配盘符功能调整为使用PECMD方式,不固定U盘盘符;
  3. 刷新后发现无USB磁盘时禁用分配盘符按钮;

2019-01-04[v2.10]:

  1. 修复其它制作动作时发现无USB磁盘时没有禁用分配盘符按钮问题;
  2. 完善盘符分配在各制作环节逻辑,目前固定了U盘盘符为U;
  3. 更新内置7-ZIP;
  4. 完善日志描述;

2019-01-14[v2.11]:

  1. 全新制作时,个人数据分区格式可选NTFS、exFAT、FAT32,默认NFTS,单选后有相应提醒;

2019-03-08[v3.0]:

  1. 增加双分区、单分区制作方式,支持配置文件自定义默认制作方式;
  2. 增加窗口收缩和展开功能,支持配置文件自定义默认是否收缩或展开;
  3. 支持选择单分区制作方式时配置文件自定义安装Grub4Dos版本;
  4. 增加BOOTICE工具;更新内置的7z程序;

2019-03-26[v3.1]:

  1. 程序启动时如果检测到无安装源就不再刷新磁盘信息;

2019-04-07[v3.2]:

  1. 增加进度条显示;
  2. 增加写入数据校验功能;

2019-04-09[v3.3]:

  1. 修复选择任意模式制作完U盘后导出ISO功能未正确初始化问题;

2019-04-24[v3.4]:

  1. 完善检测安装源再刷新磁盘信息逻辑;

2019-04-27[v3.5]:

  1. 可以通过修改配置文件列出系统中的所有磁盘;

2019-05-07[v3.6]:

  1. 修复升级制作时未删除原有数据的问题;
  2. 现在“三分区”制作模式时,默认激活EFI分区而不是data分区,从而解决WindowsXP/2003/7PE无法挂载EFI分区问题;

2019-08-18[v4.0]:

  1. 内嵌SharpZipLib.dll;
  2. 主界面增加“About”超链接按钮,可配置网页地址;

2019-09-08[v4.1]:

  1. 生成ISO镜像文件功能增加 oscdimg 方式,可选UDF参数;
  2. 优化控件交互;

2019-09-13[v4.2]:

  1. 修复生成ISO时使用oscdimg方式时,文件位于根目录下不能打包的BUG;
  2. 修复生成ISO后保存路径带空格会失败的BUG;

2019-09-14[v4.3]:

  1. 修复无损制作而非升级制作时获取右端分区大小为0的BUG;

2019-10-06[v4.4]:

  1. 点击生成ISO按钮时默认选择mkisofs方式;
  2. 如果配置文件里指定的ISO文件不存在且上层目录不存在version.txt文件时,会弹框询问是否手动指定ISO文件位置;

2019-10-07[v4.5]:

  1. 支持多开,但请不要同时运行多个实例,磁盘操作会锁定设备,多开会有数据丢失风险!(分区助手不允许多开);

2019-11-17[v4.6]:

  1. 修复EFI区被系统分配盘符的情况下使用无损还原模式后未删除EFI区的问题;

2020-10-10[v5.0]:

  1. 修复执行powershell命令无效问题;
  2. 修复单分区在全新制作时会导入fba文件问题;
  3. 初始化主窗体过程优化;
  4. UI线程优化;
  5. 调整导出ISO功能;
  6. 增加自定义引导文件配置;
  7. 优化获取挂载ISO盘符逻辑;
  8. 双分区或单分区制作时增加自定义MBR、PBR功能;
  9. 优化双分区制作流程;
  10. 双分区全新制作后的分区组合已调整为个人数据分区+EFI分区;
  11. 分配U盘盘符时不再固定使用U、V;
  12. 开放更多的个性化配置项;
  13. 更新分区助手、fbplus;

2020-10-26[v5.1]:

  1. 增加grubinst工具写入MBR功能,可自定义参数;

2020-12-12[v5.2]:

  1. 修复检测盘符失败时无法退出制作的问题;
  2. 增加双分区模式制作时将EFI分区调整到Data分区之前的功能;

2021-02-09[v5.3]:

  1. 可在界面直接取消勾选“仅USB”选项以刷新显示全部磁盘;
  2. 可配置退出程序时清理的进程列表;
  3. “链接、最小化、关闭”按钮样式调整;

2021-04-18[v5.4]:

  1. 修复由于分区助手BUG导致的磁盘列表重复问题;
  2. 更新分区助手命令行版到v9.1;

2021-07-04[v5.5]:

  1. 修复生成ISO文件时闪退问题(但生成ISO时不再显示进度条);
  2. 添加mkisofs方式生成ISO时,检测EFI引导文件体积超过限制时弹出提醒的功能;
  3. 添加mkisofs与oscdimg使用不同LegacyBIOS引导文件的功能;

2021-07-17[v5.6]:

  1. 修复多分区方式制作完成后,U盘分区会显示EFI分区但隐藏数据分区的问题(正常应该显示数据分区而隐藏EFI分区); 
  2. 修正三分区制作时格式化exFat没使用PECMD的问题;
  3. 删除误操作导致多复制的重复代码;

2022-11-23[v5.6.2]:

  1. 增加计时器,制作完成后显示耗时;
  2. 左上角图标隐藏;
  3. 更新bin.zip压缩包内的分区助手、7zip;(分区助手v9.8修复了无盘符exFAT分区卡死问题)
  4. 修改检测Windows版本号的方法,使其支持Windows 11

 

下载地址

v5.6.2

蓝奏云

123云盘

其他

v1.1版本源码:

此处内容隐藏,登录后可见!立即登录  登录后请刷新页面!刷新

最后于 2022-12-2 被caocaofff编辑 ,原因:
收藏
点赞
分享
哈哈😊
最新回复 (19)
  • 尉官 xlt 2020-10-19

    先下载,有时间学习学习。

  • VIP 1733819356 2020-10-23

    感谢楼主分享!

  • 士兵 mrzhonghb 2020-11-11

    感谢楼主分享

  • 士兵 hongyue119119 2020-12-8

    看上去很不错的说

  • 士兵 purple 2020-12-19

    感谢楼主分享.

  • 士兵 空空空空 2021-1-2

    exFAT制作有问题!

  • 超级版主 caocaofff 2021-1-2   楼主
    空空空空 exFAT制作有问题!

    可以用NTFS,制作完成后手动格式化为exFAT

    哈哈😊
  • 士兵 jzyamia 2021-1-23

    正好需要,谢谢!

  • 士兵 maltosio 2021-2-19

  • 超级版主 caocaofff 2021-4-19   楼主

    2021-04-18:

    修复由于分区助手BUG导致的磁盘列表重复问题;

    更新分区助手命令行版到v9.1;

    哈哈😊
  • VIP Linehart1995 2021-5-12

    下载地址打不开

  • 超级版主 caocaofff 2021-5-12   楼主
    Linehart1995 下载地址打不开

    重新上传到了国内网盘

    哈哈😊
  • 士兵 dzb123 2021-11-20

    要是 我只有一台电脑呢, 能当普通 PE启动盘不  

  • 超级版主 caocaofff 2021-11-20   楼主
    dzb123 要是 我只有一台电脑呢, 能当普通 PE启动盘不

    哈哈😊
  • 士兵 PCMDjssq 2022-6-8
    caocaofff 可以用NTFS,制作完成后手动格式化为exFAT

    我也遇到了

  • 超级版主 caocaofff 2022-6-8   楼主
    PCMDjssq 我也遇到了

    由于本工具依赖分区助手,但分区助手对exFAT的支持有BUG:删除exFAT分区的盘符后,分区助手在启动时会卡在加载磁盘分区步骤。

    所以目前只能在制作之前,先将U盘分区格式改成其他。

    最后于 2022-6-8 被caocaofff编辑 ,原因:
    哈哈😊
  • 士兵 方长方 2022-8-17

    不错呀,学习中!

  • 士兵 cui26896 2022-8-22

    这是少有的高手啊。

  • 士兵 hejing 2022-10-29

    先下载,有时间学习学习。

返回