mirror of
https://github.com/veracrypt/VeraCrypt.git
synced 2025-11-11 02:58:02 -06:00
Windows Setup: Warn about Fast Startup during install if it is enabled and propose to disable it at the end of the installation.
This commit is contained in:
@@ -1445,6 +1445,7 @@
|
||||
<entry lang="en" key="IDC_FORCE_VERACRYPT_BOOT_ENTRY">Force the presence of VeraCrypt entry in the EFI firmware boot menu</entry>
|
||||
<entry lang="en" key="IDC_FORCE_VERACRYPT_FIRST_BOOT_ENTRY">Force VeraCrypt entry to be the first in the EFI firmware boot menu</entry>
|
||||
<entry lang="en" key="RAM_ENCRYPTION_DISABLE_HIBERNATE">WARNING: RAM encryption is not compatible with Windows Hibernate and Windows Fast Startup features. VeraCrypt needs to disable them before activating RAM encryption.\n\nContinue?</entry>
|
||||
<entry lang="en" key="CONFIRM_DISABLE_FAST_STARTUP">WARNING: Windows Fast Startup is enabled and it is known to cause issues when working with VeraCrypt volumes. It is advised to disable it for better security and usability.\n\nDo you want to disable Windows Fast Startup?</entry>
|
||||
</localization>
|
||||
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
|
||||
<xs:element name="VeraCrypt">
|
||||
|
||||
@@ -2362,6 +2362,15 @@ void DoInstall (void *arg)
|
||||
|
||||
if (bOK && !bUninstall && !bDowngrade && !bRepairMode && !bDevm)
|
||||
{
|
||||
BOOL bHibernateEnabled = FALSE, bHiberbootEnabled = FALSE;
|
||||
if (GetHibernateStatus (bHibernateEnabled, bHiberbootEnabled))
|
||||
{
|
||||
if (bHiberbootEnabled)
|
||||
{
|
||||
bPromptFastStartup = TRUE;
|
||||
}
|
||||
}
|
||||
|
||||
if (!IsHiddenOSRunning()) // A hidden OS user should not see the post-install notes twice (on decoy OS and then on hidden OS).
|
||||
{
|
||||
if (bRestartRequired || SystemEncryptionUpdate)
|
||||
|
||||
@@ -60,6 +60,7 @@ BOOL bStartExtraction = FALSE;
|
||||
BOOL bInProgress = FALSE;
|
||||
BOOL bPromptTutorial = FALSE;
|
||||
BOOL bPromptReleaseNotes = FALSE;
|
||||
BOOL bPromptFastStartup = FALSE;
|
||||
|
||||
extern BOOL bUserSetLanguage;
|
||||
|
||||
@@ -1203,6 +1204,15 @@ BOOL CALLBACK MainDialogProc (HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lPa
|
||||
bPromptTutorial = FALSE;
|
||||
}
|
||||
|
||||
if (bPromptFastStartup
|
||||
&& AskWarnYesNo ("CONFIRM_DISABLE_FAST_STARTUP", hwndDlg) == IDYES)
|
||||
{
|
||||
WriteLocalMachineRegistryDword (L"SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Power", L"HiberbootEnabled", 0);
|
||||
bRestartRequired = TRUE;
|
||||
}
|
||||
|
||||
bPromptFastStartup = FALSE;
|
||||
|
||||
if (bRestartRequired
|
||||
&& AskYesNo (bUpgrade ? "UPGRADE_OK_REBOOT_REQUIRED" : "CONFIRM_RESTART", hwndDlg) == IDYES)
|
||||
{
|
||||
|
||||
@@ -25,6 +25,7 @@ BOOL CALLBACK MainDialogProc ( HWND hwndDlg , UINT uMsg , WPARAM wParam , LPARAM
|
||||
|
||||
extern BOOL bPromptTutorial;
|
||||
extern BOOL bPromptReleaseNotes;
|
||||
extern BOOL bPromptFastStartup;
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user