mirror of
https://github.com/ventoy/Ventoy.git
synced 2025-12-22 03:26:17 +00:00
1.1.10 release
This commit is contained in:
@@ -376,7 +376,7 @@ ventoy_get_os_type() {
|
|||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
if [ -f /etc/kylin-release ]; then
|
if [ -f /etc/kylin-release ]; then
|
||||||
if $GREP -i -q -m1 'Kylin.*Server.* V11 ' /etc/kylin-release; then
|
if $GREP -i -q -m1 'Kylin.*Server.* V1[1-9] ' /etc/kylin-release; then
|
||||||
echo 'openEuler'; return
|
echo 'openEuler'; return
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|||||||
@@ -2449,7 +2449,7 @@ function mimg_common_menuentry {
|
|||||||
#############################################################
|
#############################################################
|
||||||
#############################################################
|
#############################################################
|
||||||
|
|
||||||
set VENTOY_VERSION="1.1.09"
|
set VENTOY_VERSION="1.1.10"
|
||||||
|
|
||||||
#ACPI not compatible with Window7/8, so disable by default
|
#ACPI not compatible with Window7/8, so disable by default
|
||||||
set VTOY_PARAM_NO_ACPI=1
|
set VTOY_PARAM_NO_ACPI=1
|
||||||
|
|||||||
93
INSTALL/grub/menu/lg_UG.json
Normal file
93
INSTALL/grub/menu/lg_UG.json
Normal file
@@ -0,0 +1,93 @@
|
|||||||
|
{
|
||||||
|
"VTLANG_LANGUAGE_NAME": "English (English)",
|
||||||
|
|
||||||
|
"VTLANG_STR_HOTKEY_LIST": "L:Language F1:Help F2:Browse F3:ListView F4:Localboot F5:Tools F6:ExMenu",
|
||||||
|
"VTLANG_STR_HOTKEY_TREE": "L:Language F1:Help F2:Browse F3:TreeView F4:Localboot F5:Tools F6:ExMenu",
|
||||||
|
"VTLANG_RETURN_PREVIOUS": "Return to previous menu [Esc]",
|
||||||
|
"VTLANG_RETURN_PRV_NOESC": "Return to previous menu",
|
||||||
|
|
||||||
|
"VTLANG_MENU_LANG": "Menu Language Select",
|
||||||
|
|
||||||
|
"VTLANG_LB_SBOOT_WINDOWS": "Search and boot Windows",
|
||||||
|
"VTLANG_LB_SBOOT_G4D": "Search and boot Grub4dos",
|
||||||
|
"VTLANG_LB_SBOOT_HDD1": "Boot the 1st local disk",
|
||||||
|
"VTLANG_LB_SBOOT_HDD2": "Boot the 2nd local disk",
|
||||||
|
"VTLANG_LB_SBOOT_HDD3": "Boot the 3rd local disk",
|
||||||
|
"VTLANG_LB_SBOOT_X64EFI": "Search and boot BOOTX64.EFI",
|
||||||
|
"VTLANG_LB_SBOOT_IA32EFI": "Search and boot BOOTIA32.EFI",
|
||||||
|
"VTLANG_LB_SBOOT_AA64EFI": "Search and boot BOOTAA64.EFI",
|
||||||
|
"VTLANG_LB_SBOOT_XORBOOT": "Search and boot xorboot",
|
||||||
|
|
||||||
|
"VTLANG_FILE_CHKSUM": "File checksum",
|
||||||
|
"VTLANG_CHKSUM_MD5_CALC": "Calculate md5sum",
|
||||||
|
"VTLANG_CHKSUM_SHA1_CALC": "Calculate sha1sum",
|
||||||
|
"VTLANG_CHKSUM_SHA256_CALC": "Calculate sha256sum",
|
||||||
|
"VTLANG_CHKSUM_SHA512_CALC": "Calculate sha512sum",
|
||||||
|
"VTLANG_CHKSUM_MD5_CALC_CHK": "Calculate and check md5sum",
|
||||||
|
"VTLANG_CHKSUM_SHA1_CALC_CHK": "Calculate and check sha1sum",
|
||||||
|
"VTLANG_CHKSUM_SHA256_CALC_CHK": "Calculate and check sha256sum",
|
||||||
|
"VTLANG_CHKSUM_SHA512_CALC_CHK": "Calculate and check sha512sum",
|
||||||
|
|
||||||
|
"VTLANG_POWER": "Power",
|
||||||
|
"VTLANG_POWER_REBOOT": "Reboot",
|
||||||
|
"VTLANG_POWER_HALT": "Halt",
|
||||||
|
"VTLANG_POWER_BOOT_EFIFW": "Reboot to EFI setup",
|
||||||
|
|
||||||
|
"VTLANG_KEYBRD_LAYOUT": "Keyboard Layouts",
|
||||||
|
"VTLANG_HWINFO": "Hardware Information",
|
||||||
|
|
||||||
|
"VTLANG_RESOLUTION_CFG": "Resolution Configuration",
|
||||||
|
"VTLANG_SCREEN_MODE": "Screen Display Mode",
|
||||||
|
"VTLANG_SCREEN_TEXT_MODE": "Force Text Mode",
|
||||||
|
"VTLANG_SCREEN_GUI_MODE": "Force Graphics Mode",
|
||||||
|
|
||||||
|
"VTLANG_THEME_SELECT": "Theme Select",
|
||||||
|
|
||||||
|
"VTLANG_UEFI_UTIL": "Ventoy UEFI Utilities",
|
||||||
|
"VTLANG_UTIL_SHOW_EFI_DRV": "Show EFI Drivers",
|
||||||
|
"VTLANG_UTIL_FIX_BLINIT_FAIL": "Fixup Windows BlinitializeLibrary Failure",
|
||||||
|
|
||||||
|
"VTLANG_JSON_CHK_JSON": "Check plugin json configuration (ventoy.json)",
|
||||||
|
"VTLANG_JSON_CHK_CONTROL": "Check global control plugin configuration",
|
||||||
|
"VTLANG_JSON_CHK_THEME": "Check theme plugin configuration",
|
||||||
|
"VTLANG_JSON_CHK_AUTOINS": "Check auto install plugin configuration",
|
||||||
|
"VTLANG_JSON_CHK_PERSIST": "Check persistence plugin configuration",
|
||||||
|
"VTLANG_JSON_CHK_MENU_ALIAS": "Check menu alias plugin configuration",
|
||||||
|
"VTLANG_JSON_CHK_MENU_TIP": "Check menu tip plugin configuration",
|
||||||
|
"VTLANG_JSON_CHK_MENU_CLASS": "Check menu class plugin configuration",
|
||||||
|
"VTLANG_JSON_CHK_INJECTION": "Check injection plugin configuration",
|
||||||
|
"VTLANG_JSON_CHK_AUTO_MEMDISK": "Check auto memdisk plugin configuration",
|
||||||
|
"VTLANG_JSON_CHK_IMG_LIST": "Check image list plugin configuration",
|
||||||
|
"VTLANG_JSON_CHK_IMG_BLIST": "Check image blacklist plugin configuration",
|
||||||
|
"VTLANG_JSON_CHK_CONF_REPLACE": "Check boot conf replace plugin configuration",
|
||||||
|
"VTLANG_JSON_CHK_DUD": "Check dud plugin configuration",
|
||||||
|
"VTLANG_JSON_CHK_PASSWORD": "Check password plugin configuration",
|
||||||
|
|
||||||
|
"VTLANG_NORMAL_MODE": "Boot in normal mode",
|
||||||
|
"VTLANG_WIMBOOT_MODE": "Boot in wimboot mode",
|
||||||
|
"VTLANG_GRUB2_MODE": "Boot in grub2 mode",
|
||||||
|
"VTLANG_MEMDISK_MODE": "Boot in memdisk mode",
|
||||||
|
|
||||||
|
"VTLANG_RET_TO_LISTVIEW": "Return to ListView",
|
||||||
|
"VTLANG_RET_TO_TREEVIEW": "Return to TreeView",
|
||||||
|
|
||||||
|
"VTLANG_NO_AUTOINS_SCRIPT": "Boot without auto installation template",
|
||||||
|
"VTLANG_AUTOINS_USE": "Boot with",
|
||||||
|
|
||||||
|
"VTLANG_NO_PERSIST": "Boot without persistence",
|
||||||
|
"VTLANG_PERSIST_USE": "Boot with",
|
||||||
|
|
||||||
|
"VTLANG_BROWER_RETURN": "Return",
|
||||||
|
|
||||||
|
"VTLANG_ENTER_EXIT": "press Enter key to exit",
|
||||||
|
"VTLANG_ENTER_REBOOT": "press Enter key to reboot",
|
||||||
|
"VTLANG_ENTER_CONTINUE": "press Enter key to continue",
|
||||||
|
|
||||||
|
"VTLANG_CTRL_TEMP_SET": "Temporary Control Settings",
|
||||||
|
"VTLANG_WIN11_BYPASS_CHECK": "Bypass CPU/TPM/SecureBoot check when install Windows 11",
|
||||||
|
"VTLANG_WIN11_BYPASS_NRO": "Bypass online account requirement when install Windows 11",
|
||||||
|
"VTLANG_LINUX_REMOUNT": "Mount Ventoy partition after boot Linux",
|
||||||
|
"VTLANG_SECONDARY_BOOT_MENU": "Show secondary boot menu",
|
||||||
|
|
||||||
|
"MENU_STR_XXX": ""
|
||||||
|
}
|
||||||
@@ -65,7 +65,7 @@
|
|||||||
"STRXXX":""
|
"STRXXX":""
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "اردو (Urdu)",
|
"name": "Urdu (اردو)",
|
||||||
"FontFamily": "Noto Nastaliq Urdu",
|
"FontFamily": "Noto Nastaliq Urdu",
|
||||||
"FontSize": 16,
|
"FontSize": 16,
|
||||||
"Author": "Muhammad Ramzan",
|
"Author": "Muhammad Ramzan",
|
||||||
|
|||||||
@@ -2785,6 +2785,40 @@ static BOOL WriteBackupDataToDisk(HANDLE hDrive, UINT64 Offset, BYTE *Data, DWOR
|
|||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static int DeleteVtoyEFIMountPoint(int PhyDrive)
|
||||||
|
{
|
||||||
|
int i = 0;
|
||||||
|
BOOL bRet;
|
||||||
|
CHAR DriveLetters[MAX_PATH] = { 0 };
|
||||||
|
CHAR DriveName[] = "?:\\";
|
||||||
|
|
||||||
|
Log("Try to delete VtoyEFI mount point for PhyDrive %d\n", PhyDrive);
|
||||||
|
|
||||||
|
GetLettersBelongPhyDrive(PhyDrive, DriveLetters, sizeof(DriveLetters));
|
||||||
|
|
||||||
|
if (DriveLetters[0] == 0)
|
||||||
|
{
|
||||||
|
Log("No drive letter was assigned...");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// Unmount all mounted volumes that belong to this drive
|
||||||
|
// Do it in reverse so that we always end on the first volume letter
|
||||||
|
for (i = (int)strlen(DriveLetters); i > 0; i--)
|
||||||
|
{
|
||||||
|
DriveName[0] = DriveLetters[i - 1];
|
||||||
|
if (IsVentoyLogicalDrive(DriveName[0]))
|
||||||
|
{
|
||||||
|
Log("%s is ventoy logical drive", DriveName);
|
||||||
|
bRet = DeleteVolumeMountPointA(DriveName);
|
||||||
|
Log("Delete mountpoint %s ret:%u code:%u", DriveName, bRet, LASTERR);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
int UpdateVentoy2PhyDrive(PHY_DRIVE_INFO *pPhyDrive, int TryId)
|
int UpdateVentoy2PhyDrive(PHY_DRIVE_INFO *pPhyDrive, int TryId)
|
||||||
{
|
{
|
||||||
@@ -2874,28 +2908,7 @@ int UpdateVentoy2PhyDrive(PHY_DRIVE_INFO *pPhyDrive, int TryId)
|
|||||||
SetFilePointer(hDrive, 512 * 2040, NULL, FILE_BEGIN);
|
SetFilePointer(hDrive, 512 * 2040, NULL, FILE_BEGIN);
|
||||||
ReadFile(hDrive, ReservedData, sizeof(ReservedData), &dwSize, NULL);
|
ReadFile(hDrive, ReservedData, sizeof(ReservedData), &dwSize, NULL);
|
||||||
|
|
||||||
GetLettersBelongPhyDrive(pPhyDrive->PhyDrive, DriveLetters, sizeof(DriveLetters));
|
DeleteVtoyEFIMountPoint(pPhyDrive->PhyDrive);
|
||||||
|
|
||||||
if (DriveLetters[0] == 0)
|
|
||||||
{
|
|
||||||
Log("No drive letter was assigned...");
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
// Unmount all mounted volumes that belong to this drive
|
|
||||||
// Do it in reverse so that we always end on the first volume letter
|
|
||||||
for (i = (int)strlen(DriveLetters); i > 0; i--)
|
|
||||||
{
|
|
||||||
DriveName[0] = DriveLetters[i - 1];
|
|
||||||
if (IsVentoyLogicalDrive(DriveName[0]))
|
|
||||||
{
|
|
||||||
Log("%s is ventoy logical drive", DriveName);
|
|
||||||
bRet = DeleteVolumeMountPointA(DriveName);
|
|
||||||
Log("Delete mountpoint %s ret:%u code:%u", DriveName, bRet, LASTERR);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// It kind of blows, but we have to relinquish access to the physical drive
|
// It kind of blows, but we have to relinquish access to the physical drive
|
||||||
// for VDS to be able to delete the partitions that reside on it...
|
// for VDS to be able to delete the partitions that reside on it...
|
||||||
@@ -3270,6 +3283,9 @@ End:
|
|||||||
{
|
{
|
||||||
Log("Change EFI partition attr success");
|
Log("Change EFI partition attr success");
|
||||||
pPhyDrive->Part2GPTAttr = VENTOY_EFI_PART_ATTR;
|
pPhyDrive->Part2GPTAttr = VENTOY_EFI_PART_ATTR;
|
||||||
|
|
||||||
|
Sleep(1000);
|
||||||
|
DeleteVtoyEFIMountPoint(pPhyDrive->PhyDrive);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user