VentoyPlugson Update

- Add missing option (VTOY_WIN_UEFI_RES_LOCK)
 - Add new option (VTOY_SECURE_BOOT_POLICY)
 - Remove deprecated option (VTOY_LINUX_REMOUNT)
This commit is contained in:
longpanda
2026-06-24 16:43:10 +08:00
parent 0f59e92a01
commit 536545cd39
8 changed files with 814 additions and 786 deletions

View File

@@ -4,7 +4,7 @@
<i class="fa fa-wrench">&nbsp;&nbsp;</i>
<h1 class="box-title" style="font-weight:bold;" id="id_h1_page_title">全局控制插件</h1>
</div>
<div class="col-sm-2" style="padding-top:2px;">
<button id="id_btn_collapse" class="btn btn-sm btn-primary"><i style="font-size: 14px;" class="fa fa-minus"></i></button>
<button id="id_btn_expand" class="btn btn-sm btn-primary"><i style="font-size: 14px;" class="fa fa-plus"></i></button>
@@ -19,7 +19,7 @@
</div>
</div>
<legend></legend>
<div class="box-body">
<div class="nav-tabs-custom">
<ul class="nav nav-tabs" id="id_tab_control">
@@ -47,7 +47,7 @@
<td class="td_ctrl_col" id="td_title_setting">选项设置</td>
<td>
<select id="id_ctrl_sel_menu_lang" name="name_ctrl_sel_menu_lang" class="form-control">
</select>
</td>
</tr>
@@ -60,7 +60,7 @@
<tr id="tr_title_desc_en">
<td class="td_ctrl_col">Option Description</td>
<td>
Ventoy menu language. Default is "en_US",
Ventoy menu language. Default is "en_US",
</td>
</tr>
</table>
@@ -68,7 +68,7 @@
</div><!-- /.box -->
<div class="box box-primary box-solid">
<div class="box-header with-border">
<h3 class="box-title" style="font-size: 14px;font-weight: bold;">VTOY_DEFAULT_SEARCH_ROOT
@@ -78,7 +78,7 @@
</div><!-- /.box-tools -->
</div><!-- /.box-header -->
<div class="box-body no-padding">
<table class="table table-bordered no-padding">
<table class="table table-bordered no-padding">
<tr style="font-weight:bold;">
<td class="td_ctrl_col" id="td_title_setting">选项设置</td>
<td>
@@ -108,8 +108,8 @@
<tr id="tr_title_desc_en">
<td class="td_ctrl_col">Option Description</td>
<td>
The root path where to search the image files. By default, Ventoy will search all the directories and subdirectories in the USB. This will be very slow when you have huge number of files in the USB.
In this case, you can put all the image files in one subdirectory and use this to specify the search path.
The root path where to search the image files. By default, Ventoy will search all the directories and subdirectories in the USB. This will be very slow when you have huge number of files in the USB.
In this case, you can put all the image files in one subdirectory and use this to specify the search path.
After that Ventoy will only search this directory and its subdirectories for image files.<br/>
Note: the path must not be the mountpoint of the first partition, but a subdirectory.
</td>
@@ -117,7 +117,80 @@
</table>
</div><!-- /.box-body -->
</div><!-- /.box -->
<div class="box box-primary box-solid">
<div class="box-header with-border">
<h3 class="box-title" style="font-size: 14px;font-weight: bold;">VTOY_SECURE_BOOT_POLICY
<span id="id_span_desc_cn"> —— UEFI 安全启动策略</span></h3>
<div class="box-tools pull-right">
<button class="btn btn-box-tool" data-widget="collapse"><i class="fa fa-minus"></i></button>
</div><!-- /.box-tools -->
</div><!-- /.box-header -->
<div class="box-body no-padding">
<table class="table table-bordered no-padding">
<tr style="font-weight:bold;">
<td class="td_ctrl_col" id="td_title_setting">选项设置</td>
<td>
<label class="radio-inline">
<input type="radio" id="id_ctrl_uefi_sb_policy_radio0" name="id_ctrl_uefi_sb_policy_radio" data-type="0" value="0"/>
<span id="id_span_desc_cn">绕过安全启动检查</span>
<span id="id_span_desc_en">ByPass Secure Boot</span>
</label>
<label class="radio-inline label-rt">
<input type="radio" id="id_ctrl_uefi_sb_policy_radio1" name="id_ctrl_uefi_sb_policy_radio" data-type="1" value="1"/>
<span id="id_span_desc_cn">遵循UEFI安全启动检查规则</span>
<span id="id_span_desc_en">Follow UEFI Secure Boot Check</span>
</label>
</td>
</tr>
</table>
</div><!-- /.box-body -->
</div><!-- /.box -->
<div class="box box-primary box-solid">
<div class="box-header with-border">
<h3 class="box-title" style="font-size: 14px;font-weight: bold;">VTOY_WIN_UEFI_RES_LOCK
<span id="id_span_desc_cn"> —— UEFI 分辨率锁定</span></h3>
<div class="box-tools pull-right">
<button class="btn btn-box-tool" data-widget="collapse"><i class="fa fa-minus"></i></button>
</div><!-- /.box-tools -->
</div><!-- /.box-header -->
<div class="box-body no-padding">
<table class="table table-bordered no-padding">
<tr style="font-weight:bold;">
<td class="td_ctrl_col" id="td_title_setting">选项设置</td>
<td>
<label class="radio-inline">
<input type="radio" id="id_ctrl_uefi_res_lock_radio0" name="id_ctrl_uefi_res_lock_radio" data-type="0" value="0"/>
<span id="id_span_desc_cn">不锁定</span>
<span id="id_span_desc_en">None</span>
</label>
<label class="radio-inline label-rt">
<input type="radio" id="id_ctrl_uefi_res_lock_radio1" name="id_ctrl_uefi_res_lock_radio" data-type="1" value="1"/>
<span id="id_span_desc_cn">锁定最高分辨率</span>
<span id="id_span_desc_en">Highest</span>
</label>
<label class="radio-inline label-rt">
<input type="radio" id="id_ctrl_uefi_res_lock_radio2" name="id_ctrl_uefi_res_lock_radio" data-type="1" value="2"/>
<span id="id_span_desc_cn">锁定 1024x768</span>
<span id="id_span_desc_en">Fixed 1024x768</span>
</label>
<label class="radio-inline label-rt">
<input type="radio" id="id_ctrl_uefi_res_lock_radio3" name="id_ctrl_uefi_res_lock_radio" data-type="1" value="3"/>
<span id="id_span_desc_cn">锁定 1024x768及以上</span>
<span id="id_span_desc_en">At least 1024x768</span>
</label>
</td>
</tr>
</table>
</div><!-- /.box-body -->
</div><!-- /.box -->
<div class="box box-primary box-solid">
<div class="box-header with-border">
@@ -133,18 +206,20 @@
<td class="td_ctrl_col" id="td_title_setting">选项设置</td>
<td>
<label class="radio-inline">
<input type="radio" id="id_ctrl_bypass_win11_radio0" name="id_ctrl_bypass_win11_radio" data-type="0" value="0"/> <span style="font-weight:bold;">0</span>
</label>&nbsp;&nbsp;&nbsp;&nbsp;
<label class="radio-inline">
<input type="radio" id="id_ctrl_bypass_win11_radio1" name="id_ctrl_bypass_win11_radio" data-type="1" value="1"/> <span style="font-weight:bold;">1</span>
<input type="radio" id="id_ctrl_bypass_win11_radio0" name="id_ctrl_bypass_win11_radio" data-type="0" value="0"/>
<span id="id_span_desc_cn">不绕过Windows 11安装时的硬件检查</span>
<span id="id_span_desc_en">Do not bypass Windows 11 hardware check</span>
</label>
<label class="radio-inline label-rt">
<input type="radio" id="id_ctrl_bypass_win11_radio1" name="id_ctrl_bypass_win11_radio" data-type="1" value="1"/>
<span id="id_span_desc_cn">绕过Windows 11安装时的硬件检查</span>
<span id="id_span_desc_en">Bypass Windows 11 hardware check</span>
</label>
</td>
</tr>
<tr id="tr_title_desc_cn">
<td class="td_ctrl_col" id="td_title_desc">选项说明</td>
<td>
<code style="font-weight: bold;">0</code> 不绕过Windows 11安装时的硬件检查。<br/>
<code style="font-weight: bold;">1</code> 绕过Windows 11安装时的硬件检查。<br/><br/>
该选项只对标准Windows 11 ISO文件有效对于其他镜像文件无效。
当设置为1时Ventoy 会在安装时创建以下几个注册表项用来绕过 Windows 11 安装程序的硬件检查。<br/>
<code>HKEY_LOCAL_MACHINE\SYSTEM\Setup\LabConfig\BypassRAMCheck</code><br/>
@@ -156,8 +231,6 @@
<tr id="tr_title_desc_en">
<td class="td_ctrl_col" id="td_title_desc">Option Description</td>
<td>
<code style="font-weight: bold;">0</code> Do not bypass Windows 11 hardware check.<br/>
<code style="font-weight: bold;">1</code> Bypass Windows 11 hardware check. <br/><br/>
This option only avaliable for standard Windows 11 ISO files.
When set to 1, Ventoy will create the following registries to bypass Windows 11 hardware check when install. <br/>
<code>HKEY_LOCAL_MACHINE\SYSTEM\Setup\LabConfig\BypassRAMCheck</code><br/>
@@ -170,9 +243,9 @@
</table>
</div><!-- /.box-body -->
</div><!-- /.box -->
<div class="box box-primary box-solid">
<div class="box-header with-border">
<h3 class="box-title" style="font-size: 14px;font-weight: bold;">VTOY_WIN11_BYPASS_NRO
@@ -187,28 +260,28 @@
<td class="td_ctrl_col" id="td_title_setting">选项设置</td>
<td>
<label class="radio-inline">
<input type="radio" id="id_ctrl_bypass_nro_radio0" name="id_ctrl_bypass_nro_radio" data-type="0" value="0"/> <span style="font-weight:bold;">0</span>
</label>&nbsp;&nbsp;&nbsp;&nbsp;
<label class="radio-inline">
<input type="radio" id="id_ctrl_bypass_nro_radio1" name="id_ctrl_bypass_nro_radio" data-type="1" value="1"/> <span style="font-weight:bold;">1</span>
<input type="radio" id="id_ctrl_bypass_nro_radio0" name="id_ctrl_bypass_nro_radio" data-type="0" value="0"/>
<span id="id_span_desc_cn">不绕过Windows 11安装时的在线账户需求</span>
<span id="id_span_desc_en">Do not bypass Windows 11 online account requirement</span>
</label>
<label class="radio-inline label-rt">
<input type="radio" id="id_ctrl_bypass_nro_radio1" name="id_ctrl_bypass_nro_radio" data-type="1" value="1"/>
<span id="id_span_desc_cn">绕过Windows 11安装时的在线账户需求</span>
<span id="id_span_desc_en">Bypass Windows 11 online account requirement</span>
</label>
</td>
</tr>
<tr id="tr_title_desc_cn">
<td class="td_ctrl_col" id="td_title_desc">选项说明</td>
<td>
<code style="font-weight: bold;">0</code> 不绕过Windows 11安装时的在线账户需求。<br/>
<code style="font-weight: bold;">1</code> 绕过Windows 11安装时的在线账户需求。<br/><br/>
该选项只对标准Windows 11 ISO文件有效对于其他镜像文件无效。
当设置为1时Ventoy 会在安装时创建以下注册表项用来绕过 Windows 11 安装时对在线账户的需求。<br/>
<code>HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\OOBE\BypassNRO</code><br/>
<code>HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\OOBE\BypassNRO</code><br/>
</td>
</tr>
<tr id="tr_title_desc_en">
<td class="td_ctrl_col" id="td_title_desc">Option Description</td>
<td>
<code style="font-weight: bold;">0</code> Do not bypass Windows 11 online account requirement.<br/>
<code style="font-weight: bold;">1</code> Bypass Windows 11 online account requirement. <br/><br/>
This option only avaliable for standard Windows 11 ISO files.
When set to 1, Ventoy will create the following registry to bypass Windows 11 online account requirement when install. <br/>
<code>HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\OOBE\BypassNRO</code>
@@ -217,9 +290,9 @@
</table>
</div><!-- /.box-body -->
</div><!-- /.box -->
@@ -237,25 +310,15 @@
<td class="td_ctrl_col" id="td_title_setting">选项设置</td>
<td>
<label class="radio-inline">
<input type="radio" id="id_ctrl_radio_menu_mode0" name="id_ctrl_radio_menu_mode" data-type="0" value="0"> <span style="font-weight:bold;">0</span>
</label>&nbsp;&nbsp;&nbsp;&nbsp;
<label class="radio-inline">
<input type="radio" id="id_ctrl_radio_menu_mode1" name="id_ctrl_radio_menu_mode" data-type="1" value="1"> <span style="font-weight:bold;">1</span>
<input type="radio" id="id_ctrl_radio_menu_mode0" name="id_ctrl_radio_menu_mode" data-type="0" value="0">
<span id="id_span_desc_cn">文件列表模式</span>
<span id="id_span_desc_en">ListView Mode</span>
</label>
<label class="radio-inline label-rt">
<input type="radio" id="id_ctrl_radio_menu_mode1" name="id_ctrl_radio_menu_mode" data-type="1" value="1">
<span id="id_span_desc_cn">目录树模式</span>
<span id="id_span_desc_en">TreeView Mode</span>
</label>
</td>
</tr>
<tr id="tr_title_desc_cn">
<td class="td_ctrl_col" id="td_title_desc">选项说明</td>
<td>启动菜单默认显示模式,
<code style="font-weight: bold;">0</code> 列表模式 &nbsp;&nbsp;
<code style="font-weight: bold;">1</code> TreeView目录树 模式</td>
</tr>
<tr id="tr_title_desc_en">
<td class="td_ctrl_col">Option Description</td>
<td>
Default boot menu display mode.
<code style="font-weight: bold;">0</code> ListView Mode &nbsp;&nbsp
<code style="font-weight: bold;">1</code> TreeView Mode
</td>
</tr>
</table>
@@ -267,7 +330,7 @@
<div class="box box-primary box-solid">
<div class="box-header with-border">
<h3 class="box-title" style="font-size: 14px;font-weight: bold;">VTOY_MENU_TIMEOUT
@@ -283,7 +346,7 @@
<td>
<div class="col-sm-9" style="padding-left:0px;">
<input type="text" class="form-control" id="id_ctrl_text_timeout" name="name_ctrl_text_timeout"/>
</div>
</div>
</td>
</tr>
<tr id="tr_title_desc_cn">
@@ -303,9 +366,9 @@
</table>
</div><!-- /.box-body -->
</div><!-- /.box -->
<div class="box box-primary box-solid">
<div class="box-header with-border">
<h3 class="box-title" style="font-size: 14px;font-weight: bold;">VTOY_DEFAULT_IMAGE
@@ -352,14 +415,14 @@
</table>
</div><!-- /.box-body -->
</div><!-- /.box -->
<div class="box box-primary box-solid">
<div class="box-header with-border">
<h3 class="box-title" style="font-size: 14px;font-weight: bold;">VTOY_MAX_SEARCH_LEVEL
@@ -369,7 +432,7 @@
</div><!-- /.box-tools -->
</div><!-- /.box-header -->
<div class="box-body no-padding">
<table class="table table-bordered no-padding">
<table class="table table-bordered no-padding">
<tr style="font-weight:bold;">
<td class="td_ctrl_col" id="td_title_setting">选项设置</td>
<td>
@@ -392,7 +455,7 @@
<tr id="tr_title_desc_cn">
<td class="td_ctrl_col">选项说明</td>
<td>
最大搜索子目录的层数,取值为:<code>max</code> <code>0</code> <code>1</code> <code>2</code> <code>3</code> <code>...</code>
最大搜索子目录的层数,取值为:<code>max</code> <code>0</code> <code>1</code> <code>2</code> <code>3</code> <code>...</code>
&nbsp;&nbsp;&nbsp;默认值为:<code>max</code><br/>
默认Ventoy会递归搜索磁盘上的所有目录和子目录不管目录结构有多深都会搜索到底。你可以通过这个参数来控制搜索时的路径深度。<br/><br/>
<code>max</code> : 最大层数,也就是搜索所有子目录的意思。这也是 Ventoy 的默认值。<br/>
@@ -407,7 +470,7 @@
<tr id="tr_title_desc_en">
<td class="td_ctrl_col">Option Description</td>
<td>
Max subdirectory level when search for image files. It's value can be: <code>max</code> <code>0</code> <code>1</code> <code>2</code> <code>3</code> <code>...</code>
Max subdirectory level when search for image files. It's value can be: <code>max</code> <code>0</code> <code>1</code> <code>2</code> <code>3</code> <code>...</code>
&nbsp;&nbsp;&nbsp;default is : <code>max</code><br/>
By default, Ventoy will search all the directories and sub directories recursively no matter how deep the directory level is.<br/>
You can use this parameter to set a max-depth for the search path.<br/><br/>
@@ -423,57 +486,6 @@
</table>
</div><!-- /.box-body -->
</div><!-- /.box -->
<div class="box box-primary box-solid">
<div class="box-header with-border">
<h3 class="box-title" style="font-size: 14px;font-weight: bold;">VTOY_LINUX_REMOUNT
<span id="id_span_desc_cn"> —— Linux 启动后继续访问ISO文件所在分区</span></h3>
<div class="box-tools pull-right">
<button class="btn btn-box-tool" data-widget="collapse"><i class="fa fa-minus"></i></button>
</div><!-- /.box-tools -->
</div><!-- /.box-header -->
<div class="box-body no-padding">
<table class="table table-bordered no-padding">
<tr style="font-weight:bold;">
<td class="td_ctrl_col" id="td_title_setting">选项设置</td>
<td>
<label class="radio-inline">
<input type="radio" id="id_ctrl_linux_remount_radio0" name="id_ctrl_linux_remount_radio" data-type="0" value="0"/> <span style="font-weight:bold;">0</span>
</label>&nbsp;&nbsp;&nbsp;&nbsp;
<label class="radio-inline">
<input type="radio" id="id_ctrl_linux_remount_radio1" name="id_ctrl_linux_remount_radio" data-type="1" value="1"/> <span style="font-weight:bold;">1</span>
</label>
</td>
</tr>
<tr id="tr_title_desc_cn">
<td class="td_ctrl_col" id="td_title_desc">选项说明</td>
<td>
<code style="font-weight: bold;">0</code> Linux启动后不需要继续访问ISO文件所在的分区。<br/>
<code style="font-weight: bold;">1</code> Linux启动后需要继续访问ISO文件所在的分区。<br/><br/>
该选项只对 Linux 系统镜像有效。<br/>
默认情况下受Linux内核相关功能的限制对于Linux系统在启动后无法继续访问ISO文件所在的分区。在mount的时候会提示 device busy。<br/>
如果这里选择 1则 Ventoy 会尝试通过一些特殊的手段绕过内核的这个限制,但是这个功能是实验性质的,没有经过大规模和长时间的验证。
</td>
</tr>
<tr id="tr_title_desc_en">
<td class="td_ctrl_col" id="td_title_desc">Option Description</td>
<td>
<code style="font-weight: bold;">0</code> I don't need to access the image partition after boot.<br/>
<code style="font-weight: bold;">1</code> I need to access the image partition after boot. <br/><br/>
This option is only avaliable for Linux distro image files. <br/>
By default, the image partition where the ISO files locate can not be accessed after boot. When you try to mount it you will get device busy error.
This is due to linux kernel restriction (device-mapper module).<br/>
If you select 1 here, Ventoy will try to bypass the restriction with some special mechanism.<br/>
But it should be noted that, this is an experimental feature and is not fully tested.
</td>
</tr>
</table>
</div><!-- /.box-body -->
</div><!-- /.box -->
@@ -486,38 +498,27 @@
</div><!-- /.box-tools -->
</div><!-- /.box-header -->
<div class="box-body no-padding">
<table class="table table-bordered no-padding">
<table class="table table-bordered no-padding">
<tr style="font-weight:bold;">
<td class="td_ctrl_col" id="td_title_setting">选项设置</td>
<td>
<label class="radio-inline">
<input type="radio" id="id_ctrl_secondary_radio0" name="id_ctrl_secondary_radio" data-type="0" value="0"> <span style="font-weight:bold;">0</span>
</label>&nbsp;&nbsp;&nbsp;&nbsp;
<label class="radio-inline">
<input type="radio" id="id_ctrl_secondary_radio1" name="id_ctrl_secondary_radio" data-type="1" value="1"> <span style="font-weight:bold;">1</span>
<input type="radio" id="id_ctrl_secondary_radio0" name="id_ctrl_secondary_radio" data-type="0" value="0">
<span id="id_span_desc_cn">不显示二级启动菜单</span>
<span id="id_span_desc_en">Don't show secondary boot menu</span>
</label>
<label class="radio-inline label-rt">
<input type="radio" id="id_ctrl_secondary_radio1" name="id_ctrl_secondary_radio" data-type="1" value="1">
<span id="id_span_desc_cn">显示二级启动菜单</span>
<span id="id_span_desc_en">Show show secondary boot menu</span>
</label>
</td>
</tr>
<tr id="tr_title_desc_cn">
<td class="td_ctrl_col" id="td_title_desc">选项说明</td>
<td>二级启动菜单控制开关
<code style="font-weight: bold;">0</code> 不显示 &nbsp;&nbsp;
<code style="font-weight: bold;">1</code> 显示
</td>
</tr>
<tr id="tr_title_desc_en">
<td class="td_ctrl_col" id="td_title_desc">Option Description</td>
<td>
Secondary boot menu display option
<code style="font-weight: bold;">0</code> Don't display &nbsp;&nbsp;&nbsp;
<code style="font-weight: bold;">1</code> Display
</td>
</tr>
</table>
</div><!-- /.box-body -->
</div><!-- /.box -->
<div class="box box-primary box-solid">
<div class="box-header with-border">
<h3 class="box-title" style="font-size: 14px;font-weight: bold;">VTOY_SHOW_PASSWORD_ASTERISK
@@ -527,39 +528,28 @@
</div><!-- /.box-tools -->
</div><!-- /.box-header -->
<div class="box-body no-padding">
<table class="table table-bordered no-padding">
<table class="table table-bordered no-padding">
<tr style="font-weight:bold;">
<td class="td_ctrl_col" id="td_title_setting">选项设置</td>
<td>
<label class="radio-inline">
<input type="radio" id="id_ctrl_asterisk_radio0" name="id_ctrl_asterisk_radio" data-type="0" value="0"> <span style="font-weight:bold;">0</span>
</label>&nbsp;&nbsp;&nbsp;&nbsp;
<label class="radio-inline">
<input type="radio" id="id_ctrl_asterisk_radio1" name="id_ctrl_asterisk_radio" data-type="1" value="1"> <span style="font-weight:bold;">1</span>
<input type="radio" id="id_ctrl_asterisk_radio0" name="id_ctrl_asterisk_radio" data-type="0" value="0">
<span id="id_span_desc_cn">隐藏</span>
<span id="id_span_desc_en">Hide</span>
</label>
<label class="radio-inline label-rt">
<input type="radio" id="id_ctrl_asterisk_radio1" name="id_ctrl_asterisk_radio" data-type="1" value="1">
<span id="id_span_desc_cn">显示</span>
<span id="id_span_desc_en">Show</span>
</label>
</td>
</tr>
<tr id="tr_title_desc_cn">
<td class="td_ctrl_col" id="td_title_desc">选项说明</td>
<td>输入密码时是否显示星号
<code style="font-weight: bold;">0</code> 不显示 &nbsp;&nbsp;
<code style="font-weight: bold;">1</code> 显示
</td>
</tr>
<tr id="tr_title_desc_en">
<td class="td_ctrl_col" id="td_title_desc">Option Description</td>
<td>
Display asterisk when typing password
<code style="font-weight: bold;">0</code> Don't display &nbsp;&nbsp;&nbsp;
<code style="font-weight: bold;">1</code> Display
</td>
</tr>
</table>
</div><!-- /.box-body -->
</div><!-- /.box -->
<div class="box box-primary box-solid">
<div class="box-header with-border">
<h3 class="box-title" style="font-size: 14px;font-weight: bold;">VTOY_SECONDARY_TIMEOUT
@@ -575,7 +565,7 @@
<td>
<div class="col-sm-9" style="padding-left:0px;">
<input type="text" class="form-control" id="id_ctrl_text_secondary_timeout" name="name_ctrl_text_secondary_timeout"/>
</div>
</div>
</td>
</tr>
<tr id="tr_title_desc_cn">
@@ -596,10 +586,10 @@
</table>
</div><!-- /.box-body -->
</div><!-- /.box -->
<div class="box box-primary box-solid">
<div class="box-header with-border">
<h3 class="box-title" style="font-size: 14px;font-weight: bold;">VTOY_DEFAULT_KBD_LAYOUT
@@ -609,7 +599,7 @@
</div><!-- /.box-tools -->
</div><!-- /.box-header -->
<div class="box-body no-padding">
<table class="table table-bordered no-padding">
<table class="table table-bordered no-padding">
<tr style="font-weight:bold;">
<td class="td_ctrl_col" id="td_title_setting">选项设置</td>
<td>
@@ -652,10 +642,10 @@
</table>
</div><!-- /.box-body -->
</div><!-- /.box -->
<div class="box box-primary box-solid">
<div class="box-header with-border">
<h3 class="box-title" style="font-size: 14px;font-weight: bold;">VTOY_TREE_VIEW_MENU_STYLE
@@ -687,7 +677,7 @@
<tr id="tr_title_desc_en">
<td class="td_ctrl_col" id="td_title_desc">Option Description</td>
<td>
Menu style in TreeView mode.
Menu style in TreeView mode.
<code style="font-weight: bold;">0</code> with DIR and file size prefix &nbsp;&nbsp;&nbsp;
<code style="font-weight: bold;">1</code> No DIR and file size. Default is 0.
</td>
@@ -696,7 +686,7 @@
</div><!-- /.box-body -->
</div><!-- /.box -->
<div class="box box-primary box-solid">
<div class="box-header with-border">
<h3 class="box-title" style="font-size: 14px;font-weight: bold;">VTOY_FILT_DOT_UNDERSCORE_FILE
@@ -706,7 +696,7 @@
</div><!-- /.box-tools -->
</div><!-- /.box-header -->
<div class="box-body no-padding">
<table class="table table-bordered no-padding">
<table class="table table-bordered no-padding">
<tr style="font-weight:bold;">
<td class="td_ctrl_col" id="td_title_setting">选项设置</td>
<td>
@@ -721,14 +711,14 @@
<tr id="tr_title_desc_cn">
<td class="td_ctrl_col" id="td_title_desc">选项说明</td>
<td>过滤以 ._ 开头的文件。当使用苹果系统时,有时拷贝文件会产生一些 ._ 开头的文件,可以通过此选项过滤掉。
<code style="font-weight: bold;">0</code> 不过滤 &nbsp;&nbsp;
<code style="font-weight: bold;">0</code> 不过滤 &nbsp;&nbsp;
<code style="font-weight: bold;">1</code> 过滤
</td>
</tr>
<tr id="tr_title_desc_en">
<td class="td_ctrl_col" id="td_title_desc">Option Description</td>
<td>
Filter for files with prefix ._ in name. This will be useful when you use macOS (a lot of ._xxx file generated when you copy files).
Filter for files with prefix ._ in name. This will be useful when you use macOS (a lot of ._xxx file generated when you copy files).
<code style="font-weight: bold;">0</code> Don't filt &nbsp;&nbsp;&nbsp;
<code style="font-weight: bold;">1</code> Filt
</td>
@@ -736,7 +726,7 @@
</table>
</div><!-- /.box-body -->
</div><!-- /.box -->
<div class="box box-primary box-solid">
@@ -769,7 +759,7 @@
<tr id="tr_title_desc_en">
<td class="td_ctrl_col" id="td_title_desc">Option Description</td>
<td>
Case sensitive when sort the ISO files or directories. &nbsp;&nbsp;&nbsp;
Case sensitive when sort the ISO files or directories. &nbsp;&nbsp;&nbsp;
<code style="font-weight: bold;">0</code> case insensitive &nbsp;&nbsp;&nbsp;<code style="font-weight: bold;">1</code> case sensitive
</td>
</tr>
@@ -819,7 +809,7 @@
<div class="box box-primary box-solid">
@@ -831,7 +821,7 @@
</div><!-- /.box-tools -->
</div><!-- /.box-header -->
<div class="box-body no-padding">
<table class="table table-bordered no-padding">
<table class="table table-bordered no-padding">
<tr style="font-weight:bold;">
<td class="td_ctrl_col" id="td_title_setting">选项设置</td>
<td>
@@ -846,8 +836,8 @@
<tr id="tr_title_desc_cn">
<td class="td_ctrl_col" id="td_title_desc">选项说明</td>
<td>
<code style="font-weight: bold;">0</code> 不过滤 .iso 文件 &nbsp;&nbsp; &nbsp;&nbsp;
<code style="font-weight: bold;">1</code> 过滤掉 .iso 文件。&nbsp;&nbsp; &nbsp;&nbsp;
<code style="font-weight: bold;">0</code> 不过滤 .iso 文件 &nbsp;&nbsp; &nbsp;&nbsp;
<code style="font-weight: bold;">1</code> 过滤掉 .iso 文件。&nbsp;&nbsp; &nbsp;&nbsp;
过滤之后 .iso 文件就不会显示在启动菜单中。
</td>
</tr>
@@ -873,7 +863,7 @@
</div><!-- /.box-tools -->
</div><!-- /.box-header -->
<div class="box-body no-padding">
<table class="table table-bordered no-padding">
<table class="table table-bordered no-padding">
<tr style="font-weight:bold;">
<td class="td_ctrl_col" id="td_title_setting">选项设置</td>
<td>
@@ -888,8 +878,8 @@
<tr id="tr_title_desc_cn">
<td class="td_ctrl_col" id="td_title_desc">选项说明</td>
<td>
<code style="font-weight: bold;">0</code> 不过滤 .wim 文件 &nbsp;&nbsp; &nbsp;&nbsp;
<code style="font-weight: bold;">1</code> 过滤掉 .wim 文件。&nbsp;&nbsp; &nbsp;&nbsp;
<code style="font-weight: bold;">0</code> 不过滤 .wim 文件 &nbsp;&nbsp; &nbsp;&nbsp;
<code style="font-weight: bold;">1</code> 过滤掉 .wim 文件。&nbsp;&nbsp; &nbsp;&nbsp;
过滤之后 .wim 文件就不会显示在启动菜单中。
</td>
</tr>
@@ -916,7 +906,7 @@
</div><!-- /.box-tools -->
</div><!-- /.box-header -->
<div class="box-body no-padding">
<table class="table table-bordered no-padding">
<table class="table table-bordered no-padding">
<tr style="font-weight:bold;">
<td class="td_ctrl_col" id="td_title_setting">选项设置</td>
<td>
@@ -931,8 +921,8 @@
<tr id="tr_title_desc_cn">
<td class="td_ctrl_col" id="td_title_desc">选项说明</td>
<td>
<code style="font-weight: bold;">0</code> 不过滤 .efi 文件 &nbsp;&nbsp; &nbsp;&nbsp;
<code style="font-weight: bold;">1</code> 过滤掉 .efi 文件。&nbsp;&nbsp; &nbsp;&nbsp;
<code style="font-weight: bold;">0</code> 不过滤 .efi 文件 &nbsp;&nbsp; &nbsp;&nbsp;
<code style="font-weight: bold;">1</code> 过滤掉 .efi 文件。&nbsp;&nbsp; &nbsp;&nbsp;
过滤之后 .efi 文件就不会显示在启动菜单中。
</td>
</tr>
@@ -959,7 +949,7 @@
</div><!-- /.box-tools -->
</div><!-- /.box-header -->
<div class="box-body no-padding">
<table class="table table-bordered no-padding">
<table class="table table-bordered no-padding">
<tr style="font-weight:bold;">
<td class="td_ctrl_col" id="td_title_setting">选项设置</td>
<td>
@@ -974,8 +964,8 @@
<tr id="tr_title_desc_cn">
<td class="td_ctrl_col" id="td_title_desc">选项说明</td>
<td>
<code style="font-weight: bold;">0</code> 不过滤 .img 文件 &nbsp;&nbsp; &nbsp;&nbsp;
<code style="font-weight: bold;">1</code> 过滤掉 .img 文件。&nbsp;&nbsp; &nbsp;&nbsp;
<code style="font-weight: bold;">0</code> 不过滤 .img 文件 &nbsp;&nbsp; &nbsp;&nbsp;
<code style="font-weight: bold;">1</code> 过滤掉 .img 文件。&nbsp;&nbsp; &nbsp;&nbsp;
过滤之后 .img 文件就不会显示在启动菜单中。
</td>
</tr>
@@ -1002,7 +992,7 @@
</div><!-- /.box-tools -->
</div><!-- /.box-header -->
<div class="box-body no-padding">
<table class="table table-bordered no-padding">
<table class="table table-bordered no-padding">
<tr style="font-weight:bold;">
<td class="td_ctrl_col" id="td_title_setting">选项设置</td>
<td>
@@ -1017,8 +1007,8 @@
<tr id="tr_title_desc_cn">
<td class="td_ctrl_col" id="td_title_desc">选项说明</td>
<td>
<code style="font-weight: bold;">0</code> 不过滤 .vhd(x) 文件 &nbsp;&nbsp; &nbsp;&nbsp;
<code style="font-weight: bold;">1</code> 过滤掉 .vhd(x) 文件。&nbsp;&nbsp; &nbsp;&nbsp;
<code style="font-weight: bold;">0</code> 不过滤 .vhd(x) 文件 &nbsp;&nbsp; &nbsp;&nbsp;
<code style="font-weight: bold;">1</code> 过滤掉 .vhd(x) 文件。&nbsp;&nbsp; &nbsp;&nbsp;
过滤之后 .vhd(x) 文件就不会显示在启动菜单中。
</td>
</tr>
@@ -1045,7 +1035,7 @@
</div><!-- /.box-tools -->
</div><!-- /.box-header -->
<div class="box-body no-padding">
<table class="table table-bordered no-padding">
<table class="table table-bordered no-padding">
<tr style="font-weight:bold;">
<td class="td_ctrl_col" id="td_title_setting">选项设置</td>
<td>
@@ -1060,8 +1050,8 @@
<tr id="tr_title_desc_cn">
<td class="td_ctrl_col" id="td_title_desc">选项说明</td>
<td>
<code style="font-weight: bold;">0</code> 不过滤 .vtoy 文件 &nbsp;&nbsp; &nbsp;&nbsp;
<code style="font-weight: bold;">1</code> 过滤掉 .vtoy 文件。&nbsp;&nbsp; &nbsp;&nbsp;
<code style="font-weight: bold;">0</code> 不过滤 .vtoy 文件 &nbsp;&nbsp; &nbsp;&nbsp;
<code style="font-weight: bold;">1</code> 过滤掉 .vtoy 文件。&nbsp;&nbsp; &nbsp;&nbsp;
过滤之后 .vtoy 文件就不会显示在启动菜单中。
</td>
</tr>
@@ -1077,18 +1067,18 @@
</div><!-- /.box-body -->
</div><!-- /.box -->
</div>
</div>
<script type="text/javascript">
function VtoyPageLanguageChange(newlang) {
VtoyCommonChangeLanguage(newlang);
$('h1[id=id_h1_page_title]').text(g_vtoy_cur_language.STR_PLUG_CONTROL);
$('#id_ctrl_span_search_root_valid').text(g_vtoy_cur_language.STR_VALID);
$('#id_ctrl_span_search_root_valid').text(g_vtoy_cur_language.STR_VALID);
$('#id_ctrl_span_search_root_invalid').text(g_vtoy_cur_language.STR_INVALID);
$('#id_ctrl_span_img_valid').text(g_vtoy_cur_language.STR_VALID);
$('#id_ctrl_span_img_invalid').text(g_vtoy_cur_language.STR_INVALID);
@@ -1107,21 +1097,23 @@
data.win11_bypass_check = parseInt($('input:radio[name=id_ctrl_bypass_win11_radio]:checked').val());
data.win11_bypass_nro = parseInt($('input:radio[name=id_ctrl_bypass_nro_radio]:checked').val());
data.linux_remount = parseInt($('input:radio[name=id_ctrl_linux_remount_radio]:checked').val());
data.linux_remount = 0;
data.secondary_menu = parseInt($('input:radio[name=id_ctrl_secondary_radio]:checked').val());
data.uefi_res_lock = parseInt($('input:radio[name=id_ctrl_uefi_res_lock_radio]:checked').val());
data.uefi_sb_policy = parseInt($('input:radio[name=id_ctrl_uefi_sb_policy_radio]:checked').val());
data.password_asterisk = parseInt($('input:radio[name=id_ctrl_asterisk_radio]:checked').val());
data.default_search_root = $('input:text[id=id_ctrl_text_search_root]').val();
data.menu_timeout = parseInt($('input:text[id=id_ctrl_text_timeout]').val());
data.secondary_menu_timeout = parseInt($('input:text[id=id_ctrl_text_secondary_timeout]').val());
data.default_image = $('input:text[id=id_ctrl_text_default_img]').val();
level = $('select[id=id_ctrl_sel_max_depth').val();
if (level === 'max') {
data.max_search_level = -1;
} else {
data.max_search_level = parseInt(level);
}
data.default_kbd_layout = $('select[id=id_ctrl_sel_kbd').val();
data.default_menu_mode = parseInt($('input:radio[name=id_ctrl_radio_menu_mode]:checked').val());
data.treeview_style = parseInt($('input:radio[name=id_ctrl_radio_treestyle]:checked').val());
@@ -1145,8 +1137,9 @@
$('input:radio[name=id_ctrl_bypass_win11_radio]')[data.win11_bypass_check].checked = true;
//VTOY_WIN11_BYPASS_NRO
$('input:radio[name=id_ctrl_bypass_nro_radio]')[data.win11_bypass_nro].checked = true;
$('input:radio[name=id_ctrl_linux_remount_radio]')[data.linux_remount].checked = true;
$('input:radio[name=id_ctrl_secondary_radio]')[data.secondary_menu].checked = true;
$('input:radio[name=id_ctrl_uefi_res_lock_radio]')[data.uefi_res_lock].checked = true;
$('input:radio[name=id_ctrl_uefi_sb_policy_radio]')[data.uefi_sb_policy].checked = true;
$('input:radio[name=id_ctrl_asterisk_radio]')[data.password_asterisk].checked = true;
//VTOY_DEFAULT_SEARCH_ROOT
@@ -1166,7 +1159,7 @@
//VTOY_MENU_TIMEOUT
$('input:text[id=id_ctrl_text_timeout]').val(data.menu_timeout);
//VTOY_SECONDARY_TIMEOUT
$('input:text[id=id_ctrl_text_secondary_timeout]').val(data.secondary_menu_timeout);
@@ -1253,6 +1246,8 @@
win11_bypass_check: data.win11_bypass_check,
win11_bypass_nro: data.win11_bypass_nro,
linux_remount:data.linux_remount,
uefi_res_lock:data.uefi_res_lock,
uefi_sb_policy:data.uefi_sb_policy,
secondary_menu:data.secondary_menu,
password_asterisk:data.password_asterisk,
default_search_root: data.default_search_root,
@@ -1285,7 +1280,7 @@
if (index < 0 || index >= g_vtoy_data_default_index || current_tab_index === index) {
return;
}
current_tab_index = index;
VtoyFillCurrentPageItem(m_data_control[index]);
}
@@ -1307,7 +1302,7 @@
var path = root.substr(g_current_dir.length);
$('input:text[id=id_ctrl_text_default_img]').val(path);
if (path.length === 0) {
$('div[id=id_ctrl_div_img_status]').hide();
$('div[id=id_ctrl_div_img_status]').hide();
} else {
$('div[id=id_ctrl_div_img_status]').show();
$('span[id=id_ctrl_span_img_valid]').show();
@@ -1323,7 +1318,7 @@
callVtoySync({method : 'get_control'}, function(data) {
m_data_control = data;
});
$('#id_ctrl_btn_sel_root').click(function() {
var tip = (g_current_os === 'windows') ? '\\ISO\\Windows' : "/ISO/Linux";
var para = {
@@ -1335,7 +1330,7 @@
};
VtoySelectDirPath(OnSelectSearchRoot, para);
});
$('#id_ctrl_btn_clr_root').click(function() {
var old = $('input:text[id=id_ctrl_text_search_root]').val();
if (old.length != 0) {
@@ -1344,7 +1339,7 @@
VtoySaveCurrentPage();
}
});
$('#id_ctrl_btn_default_img').click(function() {
var tip = (g_current_os === 'windows') ? '\\ISO\\Windows10_en.iso' : "/ISO/Windows10_en.iso";
var para = {
@@ -1402,13 +1397,13 @@
$('#id_tab_control a[href="#tab_3"]').click(OnClickMultiModeTab);
$('#id_tab_control a[href="#tab_4"]').click(OnClickMultiModeTab);
$('#id_tab_control a[href="#tab_5"]').click(OnClickMultiModeTab);
function UpdateTabTitleIcon(data) {
CommonUpdateTabTitleIcon(data.exist_control, '#id_tab_control a[href="#tab_', 'control');
}
$('#id_btn_reset').click(function() {
$('#id_btn_reset').click(function() {
Modal.confirm({msg:GetResetTabConfigTipMsg(current_tab_index, 'control')}).on(function(e) {
if (e) {
if (e) {
VtoyFillCurrentPageItem(m_data_control[g_vtoy_data_default_index]);
VtoySaveCurrentPage();
}