1
0
mirror of https://github.com/veracrypt/VeraCrypt.git synced 2026-06-17 18:16:07 -05:00

Windows: Add setting/CLI switch to enable IME during Secure Desktop. Fix Preferences tabs handling.

Now it is possible to enable IME during Secure Desktop using a setting in Preferences or using /enableIME switch.
This helps solve issues with some IME that causes VeraCrypt to freeze when selecting keyfile while VeraCrypt secure desktop is active.
See: https://sourceforge.net/p/veracrypt/discussion/general/thread/1e8b9aeacd
This commit is contained in:
Mounir IDRASSI
2025-09-20 22:31:13 +09:00
parent a7ebddc5f3
commit b952201412
50 changed files with 342 additions and 137 deletions
+20
View File
@@ -9174,6 +9174,7 @@ void ExtractCommandLine (HWND hwndDlg, wchar_t *lpszCommandLine)
OptionEnableScreenProtection,
OptionKeyfile,
OptionSecureDesktop,
OptionEnableIME,
};
argument args[]=
@@ -9201,6 +9202,7 @@ void ExtractCommandLine (HWND hwndDlg, wchar_t *lpszCommandLine)
{ OptionEnableScreenProtection, L"/protectScreen", NULL, FALSE },
{ OptionKeyfile, L"/keyfile", L"/k", FALSE },
{ OptionSecureDesktop, L"/secureDesktop", NULL, FALSE },
{ OptionEnableIME, L"/enableIME", NULL, FALSE },
// Internal
{ CommandResumeSysEncLogOn, L"/acsysenc", L"/a", TRUE },
@@ -9691,6 +9693,24 @@ void ExtractCommandLine (HWND hwndDlg, wchar_t *lpszCommandLine)
}
break;
case OptionEnableIME:
{
wchar_t szTmp[16] = {0};
bCmdEnableIMEInSecureDesktop = TRUE;
bCmdEnableIMEInSecureDesktopValid = TRUE;
if (HAS_ARGUMENT == GetArgumentValue (lpszCommandLineArgs, &i, nNoCommandLineArgs,
szTmp, ARRAYSIZE (szTmp)))
{
if (!_wcsicmp(szTmp,L"n") || !_wcsicmp(szTmp,L"no"))
bCmdEnableIMEInSecureDesktop = FALSE;
else if (!_wcsicmp(szTmp,L"y") || !_wcsicmp(szTmp,L"yes"))
bCmdEnableIMEInSecureDesktop = TRUE;
else
AbortProcess ("COMMAND_LINE_ERROR");
}
}
default:
DialogBoxParamW (hInst, MAKEINTRESOURCEW (IDD_COMMANDHELP_DLG), hwndDlg, (DLGPROC)
CommandHelpDlgProc, (LPARAM) &as);