mirror of
https://github.com/ventoy/Ventoy.git
synced 2026-06-29 06:28:13 +00:00
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:
@@ -559,6 +559,8 @@ void ventoy_data_default_control(data_control *data)
|
|||||||
data->secondary_menu_timeout = 0;
|
data->secondary_menu_timeout = 0;
|
||||||
data->win11_bypass_check = 1;
|
data->win11_bypass_check = 1;
|
||||||
data->win11_bypass_nro = 1;
|
data->win11_bypass_nro = 1;
|
||||||
|
data->uefi_res_lock = 3;
|
||||||
|
data->uefi_sb_policy = 0;
|
||||||
|
|
||||||
strlcpy(data->default_kbd_layout, "QWERTY_USA");
|
strlcpy(data->default_kbd_layout, "QWERTY_USA");
|
||||||
strlcpy(data->menu_language, "en_US");
|
strlcpy(data->menu_language, "en_US");
|
||||||
@@ -584,6 +586,8 @@ int ventoy_data_cmp_control(data_control *data1, data_control *data2)
|
|||||||
data1->password_asterisk != data2->password_asterisk ||
|
data1->password_asterisk != data2->password_asterisk ||
|
||||||
data1->secondary_menu != data2->secondary_menu ||
|
data1->secondary_menu != data2->secondary_menu ||
|
||||||
data1->menu_timeout != data2->menu_timeout ||
|
data1->menu_timeout != data2->menu_timeout ||
|
||||||
|
data1->uefi_res_lock != data2->uefi_res_lock ||
|
||||||
|
data1->uefi_sb_policy != data2->uefi_sb_policy ||
|
||||||
data1->secondary_menu_timeout != data2->secondary_menu_timeout)
|
data1->secondary_menu_timeout != data2->secondary_menu_timeout)
|
||||||
{
|
{
|
||||||
return 1;
|
return 1;
|
||||||
@@ -633,6 +637,8 @@ int ventoy_data_save_control(data_control *data, const char *title, char *buf, i
|
|||||||
VTOY_JSON_FMT_CTRL_INT(L2, "VTOY_SECONDARY_BOOT_MENU", secondary_menu);
|
VTOY_JSON_FMT_CTRL_INT(L2, "VTOY_SECONDARY_BOOT_MENU", secondary_menu);
|
||||||
VTOY_JSON_FMT_CTRL_INT(L2, "VTOY_SHOW_PASSWORD_ASTERISK", password_asterisk);
|
VTOY_JSON_FMT_CTRL_INT(L2, "VTOY_SHOW_PASSWORD_ASTERISK", password_asterisk);
|
||||||
VTOY_JSON_FMT_CTRL_INT(L2, "VTOY_MENU_TIMEOUT", menu_timeout);
|
VTOY_JSON_FMT_CTRL_INT(L2, "VTOY_MENU_TIMEOUT", menu_timeout);
|
||||||
|
VTOY_JSON_FMT_CTRL_INT(L2, "VTOY_WIN_UEFI_RES_LOCK", uefi_res_lock);
|
||||||
|
VTOY_JSON_FMT_CTRL_INT(L2, "VTOY_SECURE_BOOT_POLICY", uefi_sb_policy);
|
||||||
VTOY_JSON_FMT_CTRL_INT(L2, "VTOY_SECONDARY_TIMEOUT", secondary_menu_timeout);
|
VTOY_JSON_FMT_CTRL_INT(L2, "VTOY_SECONDARY_TIMEOUT", secondary_menu_timeout);
|
||||||
|
|
||||||
VTOY_JSON_FMT_CTRL_STRN(L2, "VTOY_DEFAULT_KBD_LAYOUT", default_kbd_layout);
|
VTOY_JSON_FMT_CTRL_STRN(L2, "VTOY_DEFAULT_KBD_LAYOUT", default_kbd_layout);
|
||||||
@@ -682,6 +688,8 @@ int ventoy_data_json_control(data_control *ctrl, char *buf, int buflen)
|
|||||||
VTOY_JSON_FMT_SINT("secondary_menu", ctrl->secondary_menu);
|
VTOY_JSON_FMT_SINT("secondary_menu", ctrl->secondary_menu);
|
||||||
VTOY_JSON_FMT_SINT("password_asterisk", ctrl->password_asterisk);
|
VTOY_JSON_FMT_SINT("password_asterisk", ctrl->password_asterisk);
|
||||||
VTOY_JSON_FMT_SINT("menu_timeout", ctrl->menu_timeout);
|
VTOY_JSON_FMT_SINT("menu_timeout", ctrl->menu_timeout);
|
||||||
|
VTOY_JSON_FMT_SINT("uefi_res_lock", ctrl->uefi_res_lock);
|
||||||
|
VTOY_JSON_FMT_SINT("uefi_sb_policy", ctrl->uefi_sb_policy);
|
||||||
VTOY_JSON_FMT_SINT("secondary_menu_timeout", ctrl->secondary_menu_timeout);
|
VTOY_JSON_FMT_SINT("secondary_menu_timeout", ctrl->secondary_menu_timeout);
|
||||||
VTOY_JSON_FMT_STRN("default_kbd_layout", ctrl->default_kbd_layout);
|
VTOY_JSON_FMT_STRN("default_kbd_layout", ctrl->default_kbd_layout);
|
||||||
VTOY_JSON_FMT_STRN("menu_language", ctrl->menu_language);
|
VTOY_JSON_FMT_STRN("menu_language", ctrl->menu_language);
|
||||||
@@ -751,6 +759,8 @@ static int ventoy_api_save_control(struct mg_connection *conn, VTOY_JSON *json)
|
|||||||
VTOY_JSON_INT("secondary_menu", ctrl->secondary_menu);
|
VTOY_JSON_INT("secondary_menu", ctrl->secondary_menu);
|
||||||
VTOY_JSON_INT("password_asterisk", ctrl->password_asterisk);
|
VTOY_JSON_INT("password_asterisk", ctrl->password_asterisk);
|
||||||
VTOY_JSON_INT("menu_timeout", ctrl->menu_timeout);
|
VTOY_JSON_INT("menu_timeout", ctrl->menu_timeout);
|
||||||
|
VTOY_JSON_INT("uefi_res_lock", ctrl->uefi_res_lock);
|
||||||
|
VTOY_JSON_INT("uefi_sb_policy", ctrl->uefi_sb_policy);
|
||||||
VTOY_JSON_INT("secondary_menu_timeout", ctrl->secondary_menu_timeout);
|
VTOY_JSON_INT("secondary_menu_timeout", ctrl->secondary_menu_timeout);
|
||||||
|
|
||||||
VTOY_JSON_STR("default_image", ctrl->default_image);
|
VTOY_JSON_STR("default_image", ctrl->default_image);
|
||||||
@@ -4164,6 +4174,14 @@ static int ventoy_parse_control(VTOY_JSON *json, void *p)
|
|||||||
{
|
{
|
||||||
CONTROL_PARSE_INT_DEF_0(child, data->sort_casesensitive);
|
CONTROL_PARSE_INT_DEF_0(child, data->sort_casesensitive);
|
||||||
}
|
}
|
||||||
|
else if (strcmp(child->pcName, "VTOY_WIN_UEFI_RES_LOCK") == 0)
|
||||||
|
{
|
||||||
|
CONTROL_PARSE_INT_DEF_3(child, data->uefi_res_lock);
|
||||||
|
}
|
||||||
|
else if (strcmp(child->pcName, "VTOY_SECURE_BOOT_POLICY") == 0)
|
||||||
|
{
|
||||||
|
CONTROL_PARSE_INT_DEF_0(child, data->uefi_sb_policy);
|
||||||
|
}
|
||||||
else if (strcmp(child->pcName, "VTOY_MAX_SEARCH_LEVEL") == 0)
|
else if (strcmp(child->pcName, "VTOY_MAX_SEARCH_LEVEL") == 0)
|
||||||
{
|
{
|
||||||
if (strcmp(child->unData.pcStrVal, "max") == 0)
|
if (strcmp(child->unData.pcStrVal, "max") == 0)
|
||||||
|
|||||||
@@ -81,6 +81,8 @@ typedef struct data_control
|
|||||||
int linux_remount;
|
int linux_remount;
|
||||||
int secondary_menu;
|
int secondary_menu;
|
||||||
int password_asterisk;
|
int password_asterisk;
|
||||||
|
int uefi_res_lock;
|
||||||
|
int uefi_sb_policy;
|
||||||
char default_search_root[MAX_PATH];
|
char default_search_root[MAX_PATH];
|
||||||
char default_image[MAX_PATH];
|
char default_image[MAX_PATH];
|
||||||
char default_kbd_layout[32];
|
char default_kbd_layout[32];
|
||||||
@@ -411,6 +413,9 @@ else\
|
|||||||
#define CONTROL_PARSE_INT_DEF_1(node, val) \
|
#define CONTROL_PARSE_INT_DEF_1(node, val) \
|
||||||
if (node->unData.pcStrVal[0] == '0') val = 0
|
if (node->unData.pcStrVal[0] == '0') val = 0
|
||||||
|
|
||||||
|
#define CONTROL_PARSE_INT_DEF_3(node, val) \
|
||||||
|
if (node->unData.pcStrVal[0] == '3') val = 3
|
||||||
|
|
||||||
#define VTOY_JSON_INT(key, val) vtoy_json_get_int(json, key, &val)
|
#define VTOY_JSON_INT(key, val) vtoy_json_get_int(json, key, &val)
|
||||||
#define VTOY_JSON_STR(key, buf) vtoy_json_get_string(json, key, sizeof(buf), buf)
|
#define VTOY_JSON_STR(key, buf) vtoy_json_get_string(json, key, sizeof(buf), buf)
|
||||||
#define VTOY_JSON_STR_EX(key) vtoy_json_get_string_ex(json, key)
|
#define VTOY_JSON_STR_EX(key) vtoy_json_get_string_ex(json, key)
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
20231014 18:52:12
|
20260624 16:39:09
|
||||||
@@ -1 +1 @@
|
|||||||
ar_ARbn_BNcs_CZde_DEel_GRen_USes_ESfr_FRhi_HIhr_HRhu_HUid_IDit_ITja_JPka_GEko_KRpl_PLpt_BRpt_PTru_RUsr_RSta_INtr_TRuk_UAzh_CNzh_TW
|
ar_ARbn_BNcs_CZde_DEel_GRen_USes_ESfa_IRfr_FRhi_HIhr_HRhu_HUid_IDit_ITja_JPka_GEko_KRlg_UGpl_PLpt_BRpt_PTru_RUsl_SIsr_RSta_INtr_TRuk_UAvi_VNzh_CNzh_TW
|
||||||
@@ -39,6 +39,9 @@
|
|||||||
.treeview-menu a {
|
.treeview-menu a {
|
||||||
margin-left: 20px;
|
margin-left: 20px;
|
||||||
}
|
}
|
||||||
|
.label-rt {
|
||||||
|
margin-left: 20px !important;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
@@ -757,7 +760,7 @@
|
|||||||
|
|
||||||
<footer class="main-footer">
|
<footer class="main-footer">
|
||||||
<div class="pull-right hidden-xs">
|
<div class="pull-right hidden-xs">
|
||||||
<b id="plugson_build_date">20231014 18:52:12</b>
|
<b id="plugson_build_date">20260624 16:39:09</b>
|
||||||
</div>
|
</div>
|
||||||
<strong><a href="https://www.ventoy.net" target="_blank">https://www.ventoy.net</a></strong>
|
<strong><a href="https://www.ventoy.net" target="_blank">https://www.ventoy.net</a></strong>
|
||||||
</footer>
|
</footer>
|
||||||
@@ -777,10 +780,10 @@
|
|||||||
<script src="/static/js/jQuery-2.1.4.min.js"></script>
|
<script src="/static/js/jQuery-2.1.4.min.js"></script>
|
||||||
<!-- jquery validate -->
|
<!-- jquery validate -->
|
||||||
<script src="/static/js/jquery.validate.min.js"></script>
|
<script src="/static/js/jquery.validate.min.js"></script>
|
||||||
<script src="/static/js/jquery.validate.vtoymethods.js?v=253"></script>
|
<script src="/static/js/jquery.validate.vtoymethods.js?v=317"></script>
|
||||||
|
|
||||||
<script src="/static/js/jquery.vtoy.alert.js?v=253"></script>
|
<script src="/static/js/jquery.vtoy.alert.js?v=317"></script>
|
||||||
<script src="/static/js/vtoy.js?v=253"></script>
|
<script src="/static/js/vtoy.js?v=317"></script>
|
||||||
<script src="/static/js/md5.min.js"></script>
|
<script src="/static/js/md5.min.js"></script>
|
||||||
|
|
||||||
<!-- Bootstrap 3.3.5 -->
|
<!-- Bootstrap 3.3.5 -->
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
ar_ARbn_BNcs_CZde_DEel_GRen_USes_ESfr_FRhi_HIhr_HRhu_HUid_IDit_ITja_JPka_GEko_KRpl_PLpt_BRpt_PTru_RUsl_sisr_RSta_INtr_TRuk_UAzh_CNzh_TW
|
ar_ARbn_BNcs_CZde_DEel_GRen_USes_ESfa_IRfr_FRhi_HIhr_HRhu_HUid_IDit_ITja_JPka_GEko_KRlg_UGpl_PLpt_BRpt_PTru_RUsl_SIsr_RSta_INtr_TRuk_UAvi_VNzh_CNzh_TW
|
||||||
@@ -119,6 +119,79 @@
|
|||||||
</div><!-- /.box -->
|
</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 box-primary box-solid">
|
||||||
<div class="box-header with-border">
|
<div class="box-header with-border">
|
||||||
<h3 class="box-title" style="font-size: 14px;font-weight: bold;">VTOY_WIN11_BYPASS_CHECK
|
<h3 class="box-title" style="font-size: 14px;font-weight: bold;">VTOY_WIN11_BYPASS_CHECK
|
||||||
@@ -133,18 +206,20 @@
|
|||||||
<td class="td_ctrl_col" id="td_title_setting">选项设置</td>
|
<td class="td_ctrl_col" id="td_title_setting">选项设置</td>
|
||||||
<td>
|
<td>
|
||||||
<label class="radio-inline">
|
<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>
|
<input type="radio" id="id_ctrl_bypass_win11_radio0" name="id_ctrl_bypass_win11_radio" data-type="0" value="0"/>
|
||||||
</label>
|
<span id="id_span_desc_cn">不绕过Windows 11安装时的硬件检查</span>
|
||||||
<label class="radio-inline">
|
<span id="id_span_desc_en">Do not bypass Windows 11 hardware check</span>
|
||||||
<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>
|
</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>
|
</label>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr id="tr_title_desc_cn">
|
<tr id="tr_title_desc_cn">
|
||||||
<td class="td_ctrl_col" id="td_title_desc">选项说明</td>
|
<td class="td_ctrl_col" id="td_title_desc">选项说明</td>
|
||||||
<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文件有效,对于其他镜像文件无效。
|
该选项只对标准Windows 11 ISO文件有效,对于其他镜像文件无效。
|
||||||
当设置为1时,Ventoy 会在安装时创建以下几个注册表项用来绕过 Windows 11 安装程序的硬件检查。<br/>
|
当设置为1时,Ventoy 会在安装时创建以下几个注册表项用来绕过 Windows 11 安装程序的硬件检查。<br/>
|
||||||
<code>HKEY_LOCAL_MACHINE\SYSTEM\Setup\LabConfig\BypassRAMCheck</code><br/>
|
<code>HKEY_LOCAL_MACHINE\SYSTEM\Setup\LabConfig\BypassRAMCheck</code><br/>
|
||||||
@@ -156,8 +231,6 @@
|
|||||||
<tr id="tr_title_desc_en">
|
<tr id="tr_title_desc_en">
|
||||||
<td class="td_ctrl_col" id="td_title_desc">Option Description</td>
|
<td class="td_ctrl_col" id="td_title_desc">Option Description</td>
|
||||||
<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.
|
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/>
|
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/>
|
<code>HKEY_LOCAL_MACHINE\SYSTEM\Setup\LabConfig\BypassRAMCheck</code><br/>
|
||||||
@@ -187,18 +260,20 @@
|
|||||||
<td class="td_ctrl_col" id="td_title_setting">选项设置</td>
|
<td class="td_ctrl_col" id="td_title_setting">选项设置</td>
|
||||||
<td>
|
<td>
|
||||||
<label class="radio-inline">
|
<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>
|
<input type="radio" id="id_ctrl_bypass_nro_radio0" name="id_ctrl_bypass_nro_radio" data-type="0" value="0"/>
|
||||||
</label>
|
<span id="id_span_desc_cn">不绕过Windows 11安装时的在线账户需求</span>
|
||||||
<label class="radio-inline">
|
<span id="id_span_desc_en">Do not bypass Windows 11 online account requirement</span>
|
||||||
<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>
|
</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>
|
</label>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr id="tr_title_desc_cn">
|
<tr id="tr_title_desc_cn">
|
||||||
<td class="td_ctrl_col" id="td_title_desc">选项说明</td>
|
<td class="td_ctrl_col" id="td_title_desc">选项说明</td>
|
||||||
<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文件有效,对于其他镜像文件无效。
|
该选项只对标准Windows 11 ISO文件有效,对于其他镜像文件无效。
|
||||||
当设置为1时,Ventoy 会在安装时创建以下注册表项用来绕过 Windows 11 安装时对在线账户的需求。<br/>
|
当设置为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/>
|
||||||
@@ -207,8 +282,6 @@
|
|||||||
<tr id="tr_title_desc_en">
|
<tr id="tr_title_desc_en">
|
||||||
<td class="td_ctrl_col" id="td_title_desc">Option Description</td>
|
<td class="td_ctrl_col" id="td_title_desc">Option Description</td>
|
||||||
<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.
|
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/>
|
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>
|
<code>HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\OOBE\BypassNRO</code>
|
||||||
@@ -237,25 +310,15 @@
|
|||||||
<td class="td_ctrl_col" id="td_title_setting">选项设置</td>
|
<td class="td_ctrl_col" id="td_title_setting">选项设置</td>
|
||||||
<td>
|
<td>
|
||||||
<label class="radio-inline">
|
<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>
|
<input type="radio" id="id_ctrl_radio_menu_mode0" name="id_ctrl_radio_menu_mode" data-type="0" value="0">
|
||||||
</label>
|
<span id="id_span_desc_cn">文件列表模式</span>
|
||||||
<label class="radio-inline">
|
<span id="id_span_desc_en">ListView Mode</span>
|
||||||
<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>
|
</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>
|
</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> 列表模式
|
|
||||||
<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  
|
|
||||||
<code style="font-weight: bold;">1</code> TreeView Mode
|
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
@@ -426,57 +489,6 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<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>
|
|
||||||
<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 -->
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<div class="box box-primary box-solid">
|
<div class="box box-primary box-solid">
|
||||||
<div class="box-header with-border">
|
<div class="box-header with-border">
|
||||||
<h3 class="box-title" style="font-size: 14px;font-weight: bold;">VTOY_SECONDARY_BOOT_MENU
|
<h3 class="box-title" style="font-size: 14px;font-weight: bold;">VTOY_SECONDARY_BOOT_MENU
|
||||||
@@ -491,26 +503,15 @@
|
|||||||
<td class="td_ctrl_col" id="td_title_setting">选项设置</td>
|
<td class="td_ctrl_col" id="td_title_setting">选项设置</td>
|
||||||
<td>
|
<td>
|
||||||
<label class="radio-inline">
|
<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>
|
<input type="radio" id="id_ctrl_secondary_radio0" name="id_ctrl_secondary_radio" data-type="0" value="0">
|
||||||
</label>
|
<span id="id_span_desc_cn">不显示二级启动菜单</span>
|
||||||
<label class="radio-inline">
|
<span id="id_span_desc_en">Don't show secondary boot menu</span>
|
||||||
<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>
|
</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>
|
</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> 不显示
|
|
||||||
<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
|
|
||||||
<code style="font-weight: bold;">1</code> Display
|
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
@@ -532,26 +533,15 @@
|
|||||||
<td class="td_ctrl_col" id="td_title_setting">选项设置</td>
|
<td class="td_ctrl_col" id="td_title_setting">选项设置</td>
|
||||||
<td>
|
<td>
|
||||||
<label class="radio-inline">
|
<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>
|
<input type="radio" id="id_ctrl_asterisk_radio0" name="id_ctrl_asterisk_radio" data-type="0" value="0">
|
||||||
</label>
|
<span id="id_span_desc_cn">隐藏</span>
|
||||||
<label class="radio-inline">
|
<span id="id_span_desc_en">Hide</span>
|
||||||
<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>
|
</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>
|
</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> 不显示
|
|
||||||
<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
|
|
||||||
<code style="font-weight: bold;">1</code> Display
|
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
@@ -1107,8 +1097,10 @@
|
|||||||
|
|
||||||
data.win11_bypass_check = parseInt($('input:radio[name=id_ctrl_bypass_win11_radio]:checked').val());
|
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.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.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.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.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.menu_timeout = parseInt($('input:text[id=id_ctrl_text_timeout]').val());
|
||||||
@@ -1145,8 +1137,9 @@
|
|||||||
$('input:radio[name=id_ctrl_bypass_win11_radio]')[data.win11_bypass_check].checked = true;
|
$('input:radio[name=id_ctrl_bypass_win11_radio]')[data.win11_bypass_check].checked = true;
|
||||||
//VTOY_WIN11_BYPASS_NRO
|
//VTOY_WIN11_BYPASS_NRO
|
||||||
$('input:radio[name=id_ctrl_bypass_nro_radio]')[data.win11_bypass_nro].checked = true;
|
$('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_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;
|
$('input:radio[name=id_ctrl_asterisk_radio]')[data.password_asterisk].checked = true;
|
||||||
|
|
||||||
//VTOY_DEFAULT_SEARCH_ROOT
|
//VTOY_DEFAULT_SEARCH_ROOT
|
||||||
@@ -1253,6 +1246,8 @@
|
|||||||
win11_bypass_check: data.win11_bypass_check,
|
win11_bypass_check: data.win11_bypass_check,
|
||||||
win11_bypass_nro: data.win11_bypass_nro,
|
win11_bypass_nro: data.win11_bypass_nro,
|
||||||
linux_remount:data.linux_remount,
|
linux_remount:data.linux_remount,
|
||||||
|
uefi_res_lock:data.uefi_res_lock,
|
||||||
|
uefi_sb_policy:data.uefi_sb_policy,
|
||||||
secondary_menu:data.secondary_menu,
|
secondary_menu:data.secondary_menu,
|
||||||
password_asterisk:data.password_asterisk,
|
password_asterisk:data.password_asterisk,
|
||||||
default_search_root: data.default_search_root,
|
default_search_root: data.default_search_root,
|
||||||
|
|||||||
@@ -934,6 +934,9 @@ function VtoyCommonChangeLanguage(newlang) {
|
|||||||
$("span[id=id_span_desc_cn]").each(function(){
|
$("span[id=id_span_desc_cn]").each(function(){
|
||||||
$(this).hide();
|
$(this).hide();
|
||||||
});
|
});
|
||||||
|
$("span[id=id_span_desc_en]").each(function(){
|
||||||
|
$(this).show();
|
||||||
|
});
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
g_vtoy_cur_language = g_vtoy_cur_language_cn;
|
g_vtoy_cur_language = g_vtoy_cur_language_cn;
|
||||||
@@ -982,6 +985,10 @@ function VtoyCommonChangeLanguage(newlang) {
|
|||||||
$("span[id=id_span_desc_cn]").each(function(){
|
$("span[id=id_span_desc_cn]").each(function(){
|
||||||
$(this).show();
|
$(this).show();
|
||||||
});
|
});
|
||||||
|
|
||||||
|
$("span[id=id_span_desc_en]").each(function(){
|
||||||
|
$(this).hide();
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
$("span[id=id_span_menu_device]").text(g_vtoy_cur_language.STR_PLUG_DEVICE);
|
$("span[id=id_span_menu_device]").text(g_vtoy_cur_language.STR_PLUG_DEVICE);
|
||||||
|
|||||||
Reference in New Issue
Block a user