mirror of
https://github.com/SoftEtherVPN/SoftEtherVPN.git
synced 2025-07-07 08:14:58 +03:00
v4.15-9546-beta
This commit is contained in:
@ -138,7 +138,7 @@
|
||||
#define CEDAR_VER 415
|
||||
|
||||
// Build Number
|
||||
#define CEDAR_BUILD 9539
|
||||
#define CEDAR_BUILD 9546
|
||||
|
||||
// Beta number
|
||||
//#define BETA_NUMBER 3
|
||||
@ -153,16 +153,16 @@
|
||||
|
||||
// Specify the location to build
|
||||
#ifndef BUILD_PLACE
|
||||
#define BUILD_PLACE "pc25"
|
||||
#define BUILD_PLACE "pc30"
|
||||
#endif // BUILD_PLACE
|
||||
|
||||
// Specifies the build date
|
||||
#define BUILD_DATE_Y 2015
|
||||
#define BUILD_DATE_M 4
|
||||
#define BUILD_DATE_D 4
|
||||
#define BUILD_DATE_HO 0
|
||||
#define BUILD_DATE_MI 11
|
||||
#define BUILD_DATE_SE 55
|
||||
#define BUILD_DATE_D 5
|
||||
#define BUILD_DATE_HO 2
|
||||
#define BUILD_DATE_MI 54
|
||||
#define BUILD_DATE_SE 8
|
||||
|
||||
// Tolerable time difference
|
||||
#define ALLOW_TIMESTAMP_DIFF (UINT64)(3 * 24 * 60 * 60 * 1000)
|
||||
|
@ -166,6 +166,7 @@ static SW_OLD_MSI old_msi_vpnbridge[] =
|
||||
static char *sfx_vpn_server_bridge_files[] =
|
||||
{
|
||||
"vpnsetup.exe",
|
||||
"vpnsetup_x64.exe",
|
||||
"vpnserver.exe",
|
||||
"vpnserver_x64.exe",
|
||||
"vpnbridge.exe",
|
||||
@ -179,6 +180,7 @@ static char *sfx_vpn_server_bridge_files[] =
|
||||
static char *sfx_vpn_client_files[] =
|
||||
{
|
||||
"vpnsetup.exe",
|
||||
"vpnsetup_x64.exe",
|
||||
"vpnclient.exe",
|
||||
"vpnclient_x64.exe",
|
||||
"vpncmgr.exe",
|
||||
@ -2460,6 +2462,7 @@ void SwDefineTasks(SW *sw, SW_TASK *t, SW_COMPONENT *c)
|
||||
wchar_t dir_startup[MAX_PATH];
|
||||
wchar_t tmp1[MAX_SIZE], tmp2[MAX_SIZE];
|
||||
SW_TASK_COPY *setup_exe;
|
||||
SW_TASK_COPY *setup_exe_x64;
|
||||
// Validate arguments
|
||||
if (sw == NULL || t == NULL || c == NULL)
|
||||
{
|
||||
@ -2498,6 +2501,10 @@ void SwDefineTasks(SW *sw, SW_TASK *t, SW_COMPONENT *c)
|
||||
Add(t->CopyTasks, (setup_exe = SwNewCopyTask(src_setup_exe_filename,
|
||||
L"vpnsetup.exe", src_setup_exe_dir, sw->InstallDir, true, true)));
|
||||
|
||||
// Add vpnsetup_x64.exe to the copy list
|
||||
Add(t->CopyTasks, (setup_exe_x64 = SwNewCopyTask(L"vpnsetup_x64.exe",
|
||||
L"vpnsetup_x64.exe", src_setup_exe_dir, sw->InstallDir, true, true)));
|
||||
|
||||
// Generate the file processing list for each component
|
||||
if (c->Id == SW_CMP_VPN_SERVER)
|
||||
{
|
||||
@ -3182,9 +3189,29 @@ bool SwInstallMain(SW *sw, WIZARD_PAGE *wp, SW_COMPONENT *c)
|
||||
|
||||
if (install_su)
|
||||
{
|
||||
SwPerformPrint(wp, _UU("SW_PERFORM_MSG_INSTALL_SELOW"));
|
||||
bool ret;
|
||||
|
||||
SuInstallDriver(false);
|
||||
SwPerformPrint(wp, _UU("SW_PERFORM_MSG_INSTALL_SELOW"));
|
||||
ret = SuInstallDriver(false);
|
||||
|
||||
if (ret == false)
|
||||
{
|
||||
if (MsIs64BitWindows() && MsIsWindows10())
|
||||
{
|
||||
void *proc_handle = NULL;
|
||||
wchar_t exe[MAX_PATH];
|
||||
|
||||
CombinePathW(exe, sizeof(exe), MsGetExeDirNameW(), L"vpnsetup_x64.exe");
|
||||
|
||||
if (MsExecuteEx2W(exe, L"/SUINSTMODE:yes", &proc_handle, true))
|
||||
{
|
||||
if (proc_handle != NULL)
|
||||
{
|
||||
MsWaitProcessExit(proc_handle);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -6511,6 +6538,7 @@ void SwParseCommandLine(SW *sw)
|
||||
{"ISEASYINSTALLER", NULL, NULL, NULL, NULL, },
|
||||
{"DISABLEAUTOIMPORT", NULL, NULL, NULL, NULL, },
|
||||
{"ISWEBINSTALLER", NULL, NULL, NULL, NULL, },
|
||||
{"SUINSTMODE", NULL, NULL, NULL, NULL, },
|
||||
};
|
||||
// Validate arguments
|
||||
if (sw == NULL)
|
||||
@ -6538,6 +6566,7 @@ void SwParseCommandLine(SW *sw)
|
||||
sw->LangNow = GetParamYes(o, "LANGNOW");
|
||||
sw->SetLangAndReboot = GetParamYes(o, "SETLANGANDREBOOT");
|
||||
sw->HideStartCommand = GetParamYes(o, "HIDESTARTCOMMAND");
|
||||
sw->SuInstMode = GetParamYes(o, "SUINSTMODE");
|
||||
|
||||
// Special mode
|
||||
if (sw->LanguageMode == false)
|
||||
@ -6608,6 +6637,15 @@ UINT SWExecMain()
|
||||
sw->ExitCode = 0;
|
||||
}
|
||||
}
|
||||
else if (sw->SuInstMode)
|
||||
{
|
||||
// SuInst mode
|
||||
sw->ExitCode = 0;
|
||||
if (SuInstallDriver(false) == false)
|
||||
{
|
||||
sw->ExitCode = SW_EXIT_CODE_INTERNAL_ERROR;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
// Normal mode
|
||||
|
@ -344,6 +344,7 @@ typedef struct SW
|
||||
bool IsEasyInstaller; // Whether the calling SFX was built by the simple installer creation kit
|
||||
bool IsWebInstaller; // Whether Web installer
|
||||
bool DisableAutoImport; // Not to use the automatic import process
|
||||
bool SuInstMode; // SuInst mode
|
||||
UINT CurrentEulaHash; // Hash of the license agreement
|
||||
} SW;
|
||||
|
||||
|
Reference in New Issue
Block a user