1
0
mirror of https://github.com/SoftEtherVPN/SoftEtherVPN.git synced 2024-09-19 10:10:40 +03:00

Merge PR #1185: Build vpndrvinst and vpnsetup, build installers on Azure Pipelines, remove MSVC 2008 build on AppVeyor

This commit is contained in:
Davide Beatrici 2020-07-27 21:26:56 +02:00 committed by GitHub
commit b57a4b051b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
27 changed files with 136 additions and 307 deletions

View File

@ -1,7 +1,6 @@
version: '{build}'
image:
- Visual Studio 2015
- Visual Studio 2017
- Ubuntu1604
- Ubuntu1804
@ -24,23 +23,6 @@ init:
install: git submodule update --init --recursive
for:
-
matrix:
only:
- image: Visual Studio 2015
build_script:
- src\BuildAll.cmd
- exit %errorlevel%
after_build:
- 7z a "%APPVEYOR_BUILD_FOLDER%\%APPVEYOR_PROJECT_NAME%_%APPVEYOR_BUILD_VERSION%_Windows_x86_%CONFIGURATION%_PDBs-vs2015.zip" "%APPVEYOR_BUILD_FOLDER%\src\DebugFiles\pdb\Win32_Release\*.pdb"
- 7z a "%APPVEYOR_BUILD_FOLDER%\%APPVEYOR_PROJECT_NAME%_%APPVEYOR_BUILD_VERSION%_Windows_x64_%CONFIGURATION%_PDBs-vs2015.zip" "%APPVEYOR_BUILD_FOLDER%\src\DebugFiles\pdb\x64_Release\*.pdb"
artifacts:
- path: output\pkg\*\*
name: Release
- path: "%APPVEYOR_PROJECT_NAME%_%APPVEYOR_BUILD_VERSION%_Windows_x86_%CONFIGURATION%_PDBs-vs2015.zip"
name: PDBs (x86)
- path: "%APPVEYOR_PROJECT_NAME%_%APPVEYOR_BUILD_VERSION%_Windows_x64_%CONFIGURATION%_PDBs-vs2015.zip"
name: PDBs (x64)
-
matrix:
only:

View File

@ -4,11 +4,17 @@ parameters:
steps:
- script: |
cd /d $(Build.BinariesDirectory)
call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars${{parameters.bits}}.bat"
cmake -G "Ninja" -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_C_COMPILER=cl -DCMAKE_CXX_COMPILER=cl $(Build.SourcesDirectory)
cmake --build .
workingDirectory: $(Build.BinariesDirectory)
displayName: 'Build'
- script: |
mkdir "$(Build.StagingDirectory)/installers"
vpnsetup /SFXMODE:vpnclient /SFXOUT:"$(Build.StagingDirectory)/installers/softether-vpnclient-$(Build.SourceVersion).exe"
vpnsetup /SFXMODE:vpnserver_vpnbridge /SFXOUT:"$(Build.StagingDirectory)/installers/softether-vpnserver_vpnbridge-$(Build.SourceVersion).exe"
workingDirectory: $(Build.BinariesDirectory)
displayName: 'Build installers'
- powershell: |
. .ci\appveyor-vpntest.ps1
displayName: 'Test'
@ -16,9 +22,13 @@ steps:
inputs:
sourceFolder: '$(Build.BinariesDirectory)'
contents: '?(*.exe|*.se2|*.pdb)'
TargetFolder: '$(Build.StagingDirectory)'
TargetFolder: '$(Build.StagingDirectory)/binaries'
flattenFolders: true
- task: PublishBuildArtifacts@1
inputs:
pathtoPublish: '$(Build.StagingDirectory)'
pathtoPublish: '$(Build.StagingDirectory)/binaries'
artifactName: 'Binaries'
- task: PublishBuildArtifacts@1
inputs:
pathtoPublish: '$(Build.StagingDirectory)/installers'
artifactName: 'Installers'

View File

@ -155,11 +155,18 @@ if(WIN32)
add_subdirectory(PenCore)
add_dependencies(hamcore-archive-build PenCore)
# vpndrvinst
add_subdirectory(vpndrvinst)
add_dependencies(hamcore-archive-build vpndrvinst)
# vpnsmgr
add_subdirectory(vpnsmgr)
# vpncmgr
add_subdirectory(vpncmgr)
# vpnsetup
add_subdirectory(vpnsetup)
endif()
if(UNIX)

View File

@ -1286,7 +1286,7 @@ void *CmExecUiHelperMain()
HANDLE h;
wchar_t tmp[MAX_SIZE];
UniFormat(tmp, sizeof(tmp), L"%s\\%S", MsGetExeDirNameW(), CiGetVpnClientExeFileName());
UniFormat(tmp, sizeof(tmp), L"%s\\%S", MsGetExeDirNameW(), CLIENT_WIN32_EXE_FILENAME);
// Start
h = Win32RunExW(tmp, SVC_ARG_UIHELP_W, false);

View File

@ -411,27 +411,6 @@ typedef struct CNC_CONNECT_ERROR_DLG_THREAD_PARAM
EVENT *Event;
} CNC_CONNECT_ERROR_DLG_THREAD_PARAM;
// Get the file name of vpnclient.exe in Win32
char *CiGetVpnClientExeFileName()
{
if (Is64() == false)
{
return CLIENT_WIN32_EXE_FILENAME;
}
else
{
if (IsX64())
{
return CLIENT_WIN32_EXE_FILENAME_X64;
}
else
{
return CLIENT_WIN32_EXE_FILENAME_IA64;
}
}
}
// Thread to stop forcibly the Certificate check dialog client
void CncCheckCertHaltThread(THREAD *thread, void *param)
{

View File

@ -36,8 +36,6 @@
#define CLIENT_NOTIFY_SERVICE_INSTANCENAME GC_SW_SOFTETHER_PREFIX "vpnclient_uihelper"
#define CLIENT_WIN32_EXE_FILENAME "vpnclient.exe"
#define CLIENT_WIN32_EXE_FILENAME_X64 "vpnclient_x64.exe"
#define CLIENT_WIN32_EXE_FILENAME_IA64 "vpnclient_ia64.exe"
#define CLIENT_CUSTOM_INI_FILENAME "$custom.ini"
@ -599,7 +597,6 @@ bool CtSetCommonProxySetting(CLIENT *c, INTERNET_SETTING *a);
// Internal function prototype
void CiSendGlobalPulse(CLIENT *c);
void CiPulseRecvThread(THREAD *thread, void *param);
char *CiGetVpnClientExeFileName();
void CiServerThread(THREAD *t, void *param);
void CiInitSaver(CLIENT *c);
void CiFreeSaver(CLIENT *c);

View File

@ -886,7 +886,7 @@ void VpnCmdInitBootPath()
char tmp[MAX_PATH];
GetExeName(exe_path, sizeof(exe_path));
if (SearchStrEx(exe_path, "ham.exe", 0, false) != INFINITE || SearchStrEx(exe_path, "ham_x64.exe", 0, false) != INFINITE || SearchStrEx(exe_path, "ham_ia64.exe", 0, false) != INFINITE)
if (SearchStrEx(exe_path, "ham.exe", 0, false) != INFINITE)
{
return;
}
@ -901,7 +901,6 @@ void VpnCmdInitBootPath()
if ((CEDAR_VERSION_BUILD >= current_ver) ||
MsRegIsValue(REG_LOCAL_MACHINE, VPNCMD_BOOTSTRAP_REG_KEYNAME, VPNCMD_BOOTSTRAP_REG_VALUENAME_PATH) == false)
{
char *src_filename;
bool b = false;
// Copy the vpncmdsys.exe to system32
if (MsIsNt())
@ -913,49 +912,27 @@ void VpnCmdInitBootPath()
Format(tmp, sizeof(tmp), "%s\\vpncmd.exe", MsGetWindowsDir());
}
src_filename = VPNCMD_BOOTSTRAP_FILENAME;
if (IsX64())
{
src_filename = VPNCMD_BOOTSTRAP_FILENAME_X64;
}
if (IsIA64())
{
src_filename = VPNCMD_BOOTSTRAP_FILENAME_IA64;
}
b = true;
if (MsIs64BitWindows() == false || Is64())
{
if (IsFile(tmp) == false || (CEDAR_VERSION_BUILD > current_ver) || MsRegIsValue(REG_LOCAL_MACHINE, VPNCMD_BOOTSTRAP_REG_KEYNAME, VPNCMD_BOOTSTRAP_REG_VALUENAME_PATH) == false)
{
b = FileCopy(src_filename, tmp);
b = FileCopy(VPNCMD_BOOTSTRAP_FILENAME, tmp);
}
}
else
{
void *wow;
void *wow = MsDisableWow64FileSystemRedirection();
wow = MsDisableWow64FileSystemRedirection();
if (true)
if (IsFile(tmp) == false || (CEDAR_VERSION_BUILD > current_ver) || MsRegIsValue(REG_LOCAL_MACHINE, VPNCMD_BOOTSTRAP_REG_KEYNAME, VPNCMD_BOOTSTRAP_REG_VALUENAME_PATH) == false)
{
if (IsFile(tmp) == false || (CEDAR_VERSION_BUILD > current_ver) || MsRegIsValue(REG_LOCAL_MACHINE, VPNCMD_BOOTSTRAP_REG_KEYNAME, VPNCMD_BOOTSTRAP_REG_VALUENAME_PATH) == false)
{
b = FileCopy(src_filename, tmp);
}
b = FileCopy(VPNCMD_BOOTSTRAP_FILENAME, tmp);
}
MsRestoreWow64FileSystemRedirection(wow);
if (true)
if (IsFile(tmp) == false || (CEDAR_VERSION_BUILD > current_ver) || MsRegIsValue(REG_LOCAL_MACHINE, VPNCMD_BOOTSTRAP_REG_KEYNAME, VPNCMD_BOOTSTRAP_REG_VALUENAME_PATH) == false)
{
if (IsFile(tmp) == false || (CEDAR_VERSION_BUILD > current_ver) || MsRegIsValue(REG_LOCAL_MACHINE, VPNCMD_BOOTSTRAP_REG_KEYNAME, VPNCMD_BOOTSTRAP_REG_VALUENAME_PATH) == false)
{
b = FileCopy(src_filename, tmp);
}
b = FileCopy(VPNCMD_BOOTSTRAP_FILENAME, tmp);
}
}

View File

@ -25,8 +25,6 @@
#define VPNCMD_BOOTSTRAP_REG_VALUENAME_VER "InstalledVersion"
#define VPNCMD_BOOTSTRAP_REG_VALUENAME_PATH "InstalledPath"
#define VPNCMD_BOOTSTRAP_FILENAME "|vpncmdsys.exe"
#define VPNCMD_BOOTSTRAP_FILENAME_X64 "|vpncmdsys_x64.exe"
#define VPNCMD_BOOTSTRAP_FILENAME_IA64 "|vpncmdsys_ia64.exe"
// Traffic test results

View File

@ -20028,26 +20028,17 @@ void SmInitDefaultSettingList()
{
MS_PROCESS *p = LIST_DATA(pl, i);
if (UniInStr(p->ExeFilenameW, L"vpnserver.exe") || UniInStr(p->ExeFilenameW, L"vpnserver_x64.exe") ||
UniInStr(p->ExeFilenameW, L"vpnserver_ia64.exe") ||
UniInStr(p->ExeFilenameW, L"vpnbridge.exe") || UniInStr(p->ExeFilenameW, L"vpnbridge_x64.exe") ||
UniInStr(p->ExeFilenameW, L"vpnbridge_ia64.exe"))
if (UniInStr(p->ExeFilenameW, L"vpnserver.exe") || UniInStr(p->ExeFilenameW, L"vpnbridge.exe"))
{
b = true;
}
if (UniInStr(p->ExeFilenameW, L"sevpnserver.exe") || UniInStr(p->ExeFilenameW, L"sevpnserver_x64.exe") ||
UniInStr(p->ExeFilenameW, L"sevpnserver_ia64.exe") ||
UniInStr(p->ExeFilenameW, L"sevpnbridge.exe") || UniInStr(p->ExeFilenameW, L"sevpnbridge_x64.exe") ||
UniInStr(p->ExeFilenameW, L"sevpnbridge_ia64.exe"))
if (UniInStr(p->ExeFilenameW, L"sevpnserver.exe") || UniInStr(p->ExeFilenameW, L"sevpnbridge.exe"))
{
b = true;
}
if (UniInStr(p->ExeFilenameW, L"utvpnserver.exe") || UniInStr(p->ExeFilenameW, L"utvpnserver_x64.exe") ||
UniInStr(p->ExeFilenameW, L"utvpnserver_ia64.exe") ||
UniInStr(p->ExeFilenameW, L"utvpnbridge.exe") || UniInStr(p->ExeFilenameW, L"utvpnbridge_x64.exe") ||
UniInStr(p->ExeFilenameW, L"utvpnbridge_ia64.exe"))
if (UniInStr(p->ExeFilenameW, L"utvpnserver.exe") || UniInStr(p->ExeFilenameW, L"utvpnbridge.exe"))
{
b = true;
}

View File

@ -60,29 +60,20 @@ 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",
"vpnbridge_x64.exe",
"vpnsmgr.exe",
"vpnsmgr_x64.exe",
"vpncmd.exe",
"vpncmd_x64.exe",
"hamcore.se2",
};
static char *sfx_vpn_client_files[] =
{
"vpnsetup.exe",
"vpnsetup_x64.exe",
"vpnclient.exe",
"vpnclient_x64.exe",
"vpncmgr.exe",
"vpncmgr_x64.exe",
"vpncmd.exe",
"vpncmd_x64.exe",
"vpninstall.exe",
"vpnweb.cab",
//"vpninstall.exe",
//"vpnweb.cab",
"hamcore.se2",
};
@ -141,7 +132,7 @@ bool SwCompileSfx(LIST *o, wchar_t *dst_filename)
{
// Generate the setup.exe file in the Temp directory
ConbinePathW(exe_filename, sizeof(exe_filename), MsGetMyTempDirW(), L"setup.exe");
if (FileCopyW(L"|vpnsetup_nosign.exe", exe_filename))
if (FileCopyW(L"vpnsetup.exe", exe_filename))
{
// Resource updating start
HANDLE h = _BeginUpdateResourceW(exe_filename, false);
@ -289,8 +280,6 @@ bool SwAddBasicFilesToList(LIST *o, char *component_name)
return false;
}
Add(o, SwNewSfxFile("install_src.dat", L"|install_src.dat"));
return true;
}
@ -1973,7 +1962,6 @@ void SwDeleteShortcuts(SW_LOGFILE *logfile)
// Uninstall main
bool SwUninstallMain(SW *sw, WIZARD_PAGE *wp, SW_COMPONENT *c)
{
bool x64 = MsIs64BitWindows();
bool ok;
wchar_t tmp[MAX_SIZE];
UINT i;
@ -2349,7 +2337,6 @@ LABEL_CLEANUP:
void SwDefineTasks(SW *sw, SW_TASK *t, SW_COMPONENT *c)
{
wchar_t tmp[MAX_SIZE];
bool x64 = MsIs64BitWindows();
wchar_t src_setup_exe_fullpath[MAX_PATH];
wchar_t src_setup_exe_dir[MAX_PATH];
wchar_t src_setup_exe_filename[MAX_PATH];
@ -2363,7 +2350,6 @@ 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)
{
@ -2402,10 +2388,6 @@ 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)
{
@ -2416,18 +2398,9 @@ void SwDefineTasks(SW *sw, SW_TASK *t, SW_COMPONENT *c)
CombinePathW(tmp, sizeof(tmp), sw->InstallDir, L"backup.vpn_server.config");
Add(t->SetSecurityPaths, CopyUniStr(tmp));
if (x64 == false)
{
vpnserver = SwNewCopyTask(L"vpnserver.exe", NULL, sw->InstallSrc, sw->InstallDir, true, false);
vpncmd = SwNewCopyTask(L"vpncmd.exe", NULL, sw->InstallSrc, sw->InstallDir, true, false);
vpnsmgr = SwNewCopyTask(L"vpnsmgr.exe", NULL, sw->InstallSrc, sw->InstallDir, true, false);
}
else
{
vpnserver = SwNewCopyTask(L"vpnserver_x64.exe", NULL, sw->InstallSrc, sw->InstallDir, true, false);
vpncmd = SwNewCopyTask(L"vpncmd_x64.exe", NULL, sw->InstallSrc, sw->InstallDir, true, false);
vpnsmgr = SwNewCopyTask(L"vpnsmgr_x64.exe", NULL, sw->InstallSrc, sw->InstallDir, true, false);
}
vpnserver = SwNewCopyTask(L"vpnserver.exe", NULL, sw->InstallSrc, sw->InstallDir, true, false);
vpncmd = SwNewCopyTask(L"vpncmd.exe", NULL, sw->InstallSrc, sw->InstallDir, true, false);
vpnsmgr = SwNewCopyTask(L"vpnsmgr.exe", NULL, sw->InstallSrc, sw->InstallDir, true, false);
Add(t->CopyTasks, vpnserver);
Add(t->CopyTasks, vpncmd);
@ -2496,18 +2469,9 @@ void SwDefineTasks(SW *sw, SW_TASK *t, SW_COMPONENT *c)
CombinePathW(tmp, sizeof(tmp), sw->InstallDir, L"backup.vpn_bridge.config");
Add(t->SetSecurityPaths, CopyUniStr(tmp));
if (x64 == false)
{
vpnbridge = SwNewCopyTask(L"vpnbridge.exe", NULL, sw->InstallSrc, sw->InstallDir, true, false);
vpncmd = SwNewCopyTask(L"vpncmd.exe", NULL, sw->InstallSrc, sw->InstallDir, true, false);
vpnsmgr = SwNewCopyTask(L"vpnsmgr.exe", NULL, sw->InstallSrc, sw->InstallDir, true, false);
}
else
{
vpnbridge = SwNewCopyTask(L"vpnbridge_x64.exe", NULL, sw->InstallSrc, sw->InstallDir, true, false);
vpncmd = SwNewCopyTask(L"vpncmd_x64.exe", NULL, sw->InstallSrc, sw->InstallDir, true, false);
vpnsmgr = SwNewCopyTask(L"vpnsmgr_x64.exe", NULL, sw->InstallSrc, sw->InstallDir, true, false);
}
vpnbridge = SwNewCopyTask(L"vpnbridge.exe", NULL, sw->InstallSrc, sw->InstallDir, true, false);
vpncmd = SwNewCopyTask(L"vpncmd.exe", NULL, sw->InstallSrc, sw->InstallDir, true, false);
vpnsmgr = SwNewCopyTask(L"vpnsmgr.exe", NULL, sw->InstallSrc, sw->InstallDir, true, false);
Add(t->CopyTasks, vpnbridge);
Add(t->CopyTasks, vpncmd);
@ -2572,33 +2536,17 @@ void SwDefineTasks(SW *sw, SW_TASK *t, SW_COMPONENT *c)
// VPN Client
SW_TASK_COPY *ct;
SW_TASK_COPY *vpnclient, *vpncmd, *vpncmgr;
SW_TASK_COPY *vpnclient_gomi, *vpncmd_gomi, *vpncmgr_gomi;
SW_TASK_COPY *sfx_cache = NULL;
SW_TASK_COPY *vpnweb;
SW_TASK_COPY *vpninstall;
//SW_TASK_COPY *vpnweb;
//SW_TASK_COPY *vpninstall;
wchar_t *src_config_filename;
CombinePathW(tmp, sizeof(tmp), sw->InstallDir, L"backup.vpn_client.config");
Add(t->SetSecurityPaths, CopyUniStr(tmp));
if (x64 == false)
{
vpnclient = SwNewCopyTask(L"vpnclient.exe", NULL, sw->InstallSrc, sw->InstallDir, true, false);
vpncmd = SwNewCopyTask(L"vpncmd.exe", NULL, sw->InstallSrc, sw->InstallDir, true, false);
vpncmgr = SwNewCopyTask(L"vpncmgr.exe", NULL, sw->InstallSrc, sw->InstallDir, true, false);
vpnclient_gomi = SwNewCopyTask(L"vpnclient_x64.exe", NULL, sw->InstallSrc, sw->InstallDir, true, false);
vpncmd_gomi = SwNewCopyTask(L"vpncmd_x64.exe", NULL, sw->InstallSrc, sw->InstallDir, true, false);
vpncmgr_gomi = SwNewCopyTask(L"vpncmgr_x64.exe", NULL, sw->InstallSrc, sw->InstallDir, true, false);
}
else
{
vpnclient = SwNewCopyTask(L"vpnclient_x64.exe", NULL, sw->InstallSrc, sw->InstallDir, true, false);
vpncmd = SwNewCopyTask(L"vpncmd_x64.exe", NULL, sw->InstallSrc, sw->InstallDir, true, false);
vpncmgr = SwNewCopyTask(L"vpncmgr_x64.exe", NULL, sw->InstallSrc, sw->InstallDir, true, false);
vpnclient_gomi = SwNewCopyTask(L"vpnclient.exe", NULL, sw->InstallSrc, sw->InstallDir, true, false);
vpncmd_gomi = SwNewCopyTask(L"vpncmd.exe", NULL, sw->InstallSrc, sw->InstallDir, true, false);
vpncmgr_gomi = SwNewCopyTask(L"vpncmgr.exe", NULL, sw->InstallSrc, sw->InstallDir, true, false);
}
vpnclient = SwNewCopyTask(L"vpnclient.exe", NULL, sw->InstallSrc, sw->InstallDir, true, false);
vpncmd = SwNewCopyTask(L"vpncmd.exe", NULL, sw->InstallSrc, sw->InstallDir, true, false);
vpncmgr = SwNewCopyTask(L"vpncmgr.exe", NULL, sw->InstallSrc, sw->InstallDir, true, false);
if (vpncmgr != NULL)
{
@ -2621,17 +2569,14 @@ void SwDefineTasks(SW *sw, SW_TASK *t, SW_COMPONENT *c)
}
}
vpnweb = SwNewCopyTask(L"vpnweb.cab", NULL, sw->InstallSrc, sw->InstallDir, true, false);
vpninstall = SwNewCopyTask(L"vpninstall.exe", NULL, sw->InstallSrc, sw->InstallDir, true, false);
//vpnweb = SwNewCopyTask(L"vpnweb.cab", NULL, sw->InstallSrc, sw->InstallDir, true, false);
//vpninstall = SwNewCopyTask(L"vpninstall.exe", NULL, sw->InstallSrc, sw->InstallDir, true, false);
Add(t->CopyTasks, vpnclient);
Add(t->CopyTasks, vpncmd);
Add(t->CopyTasks, vpncmgr);
Add(t->CopyTasks, vpnclient_gomi);
Add(t->CopyTasks, vpncmd_gomi);
Add(t->CopyTasks, vpncmgr_gomi);
Add(t->CopyTasks, vpnweb);
Add(t->CopyTasks, vpninstall);
//Add(t->CopyTasks, vpnweb);
//Add(t->CopyTasks, vpninstall);
if (sfx_cache != NULL)
@ -2713,16 +2658,8 @@ void SwDefineTasks(SW *sw, SW_TASK *t, SW_COMPONENT *c)
// VPN Server Manager (Tools Only)
SW_TASK_COPY *vpncmd, *vpnsmgr;
if (x64 == false)
{
vpncmd = SwNewCopyTask(L"vpncmd.exe", NULL, sw->InstallSrc, sw->InstallDir, true, false);
vpnsmgr = SwNewCopyTask(L"vpnsmgr.exe", NULL, sw->InstallSrc, sw->InstallDir, true, false);
}
else
{
vpncmd = SwNewCopyTask(L"vpncmd_x64.exe", NULL, sw->InstallSrc, sw->InstallDir, true, false);
vpnsmgr = SwNewCopyTask(L"vpnsmgr_x64.exe", NULL, sw->InstallSrc, sw->InstallDir, true, false);
}
vpncmd = SwNewCopyTask(L"vpncmd.exe", NULL, sw->InstallSrc, sw->InstallDir, true, false);
vpnsmgr = SwNewCopyTask(L"vpnsmgr.exe", NULL, sw->InstallSrc, sw->InstallDir, true, false);
Add(t->CopyTasks, vpncmd);
Add(t->CopyTasks, vpnsmgr);
@ -2749,16 +2686,8 @@ void SwDefineTasks(SW *sw, SW_TASK *t, SW_COMPONENT *c)
// VPN Client Manager (Tools Only)
SW_TASK_COPY *vpncmd, *vpncmgr;
if (x64 == false)
{
vpncmd = SwNewCopyTask(L"vpncmd.exe", NULL, sw->InstallSrc, sw->InstallDir, true, false);
vpncmgr = SwNewCopyTask(L"vpncmgr.exe", NULL, sw->InstallSrc, sw->InstallDir, true, false);
}
else
{
vpncmd = SwNewCopyTask(L"vpncmd_x64.exe", NULL, sw->InstallSrc, sw->InstallDir, true, false);
vpncmgr = SwNewCopyTask(L"vpncmgr_x64.exe", NULL, sw->InstallSrc, sw->InstallDir, true, false);
}
vpncmd = SwNewCopyTask(L"vpncmd.exe", NULL, sw->InstallSrc, sw->InstallDir, true, false);
vpncmgr = SwNewCopyTask(L"vpncmgr.exe", NULL, sw->InstallSrc, sw->InstallDir, true, false);
Add(t->CopyTasks, vpncmd);
Add(t->CopyTasks, vpncmgr);
@ -3044,7 +2973,6 @@ bool SwInstallMain(SW *sw, WIZARD_PAGE *wp, SW_COMPONENT *c)
UINT i;
wchar_t tmp[MAX_SIZE * 2];
bool ok;
bool x64 = MsIs64BitWindows();
// Validate arguments
if (sw == NULL || wp == NULL || c == NULL)
{
@ -3100,7 +3028,7 @@ bool SwInstallMain(SW *sw, WIZARD_PAGE *wp, SW_COMPONENT *c)
void *proc_handle = NULL;
wchar_t exe[MAX_PATH];
CombinePathW(exe, sizeof(exe), MsGetExeDirNameW(), L"vpnsetup_x64.exe");
CombinePathW(exe, sizeof(exe), MsGetExeDirNameW(), L"vpnsetup.exe");
if (MsExecuteEx2W(exe, L"/SUINSTMODE:yes", &proc_handle, true))
{
@ -3671,7 +3599,7 @@ LABEL_CREATE_SHORTCUT:
// Run the vpncmd and exit immediately
wchar_t fullpath[MAX_PATH];
ConbinePathW(fullpath, sizeof(fullpath), sw->InstallDir, (MsIsX64() ? L"vpncmd_x64.exe" : L"vpncmd.exe"));
ConbinePathW(fullpath, sizeof(fullpath), sw->InstallDir, (L"vpncmd.exe"));
RunW(fullpath, L"/?", true, false);
}
@ -5633,13 +5561,6 @@ UINT SwWelcomeDlg(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam, WIZARD *wiz
break;
case WM_WIZ_NEXT:
if (IsFileExistsW(L"@install_src.dat") == false)
{
// Vpnsetup.exe is launched from other than the installation source
MsgBoxEx(hWnd, MB_ICONSTOP, _UU("SW_NOT_INSTALL_SRC"));
break;
}
if (MsIsKB3033929RequiredAndMissing())
{
// KB3033929 is missing
@ -6112,49 +6033,34 @@ void SwDefineComponents(SW *sw)
char *vpn_server_files[] =
{
"vpnserver.exe",
"vpnserver_x64.exe",
"vpnsmgr.exe",
"vpnsmgr_x64.exe",
"vpncmd.exe",
"vpncmd_x64.exe",
"hamcore.se2",
};
char *vpn_client_files[] =
{
"vpnclient.exe",
"vpnclient_x64.exe",
"vpncmgr.exe",
"vpncmgr_x64.exe",
"vpncmd.exe",
"vpncmd_x64.exe",
"hamcore.se2",
"vpninstall.exe",
"vpnweb.cab",
};
char *vpn_bridge_files[] =
{
"vpnbridge.exe",
"vpnbridge_x64.exe",
"vpnsmgr.exe",
"vpnsmgr_x64.exe",
"vpncmd.exe",
"vpncmd_x64.exe",
"hamcore.se2",
};
char *vpn_smgr_files[] =
{
"vpnsmgr.exe",
"vpnsmgr_x64.exe",
"vpncmd.exe",
"vpncmd_x64.exe",
"hamcore.se2",
};
char *vpn_cmgr_files[] =
{
"vpncmgr.exe",
"vpncmgr_x64.exe",
"vpncmd.exe",
"vpncmd_x64.exe",
"hamcore.se2",
};
// Validate arguments
@ -6164,16 +6070,16 @@ void SwDefineComponents(SW *sw)
}
// VPN Server
c = SwNewComponent(SW_NAME_VPNSERVER, GC_SVC_NAME_VPNSERVER, SW_CMP_VPN_SERVER, ICO_VPNSERVER, 5, (MsIsX64() ? L"vpnserver_x64.exe" : L"vpnserver.exe"),
c = SwNewComponent(SW_NAME_VPNSERVER, GC_SVC_NAME_VPNSERVER, SW_CMP_VPN_SERVER, ICO_VPNSERVER, 5, L"vpnserver.exe",
SW_LONG_VPNSERVER, false, sizeof(vpn_server_files) / sizeof(char *), vpn_server_files,
(MsIsX64() ? L"vpnsmgr_x64.exe" : L"vpnsmgr.exe"), _UU("SW_RUN_TEXT_VPNSMGR"),
L"vpnsmgr.exe", _UU("SW_RUN_TEXT_VPNSMGR"),
old_msi_vpnserver, sizeof(old_msi_vpnserver) / sizeof(SW_OLD_MSI));
Add(sw->ComponentList, c);
// VPN Client
c = SwNewComponent(SW_NAME_VPNCLIENT, GC_SVC_NAME_VPNCLIENT, SW_CMP_VPN_CLIENT, ICO_VPN, 6, (MsIsX64() ? L"vpnclient_x64.exe" : L"vpnclient.exe"),
c = SwNewComponent(SW_NAME_VPNCLIENT, GC_SVC_NAME_VPNCLIENT, SW_CMP_VPN_CLIENT, ICO_VPN, 6, L"vpnclient.exe",
SW_LONG_VPNCLIENT, true, sizeof(vpn_client_files) / sizeof(char *), vpn_client_files,
(MsIsX64() ? L"vpncmgr_x64.exe" : L"vpncmgr.exe"), _UU("SW_RUN_TEXT_VPNCMGR"),
L"vpncmgr.exe", _UU("SW_RUN_TEXT_VPNCMGR"),
old_msi_vpnclient, sizeof(old_msi_vpnclient) / sizeof(SW_OLD_MSI));
#ifdef GC_ENABLE_VPNGATE
@ -6182,23 +6088,23 @@ void SwDefineComponents(SW *sw)
Add(sw->ComponentList, c);
// VPN Bridge
c = SwNewComponent(SW_NAME_VPNBRIDGE, GC_SVC_NAME_VPNBRIDGE, SW_CMP_VPN_BRIDGE, ICO_CASCADE, 7, (MsIsX64() ? L"vpnbridge_x64.exe" : L"vpnbridge.exe"),
c = SwNewComponent(SW_NAME_VPNBRIDGE, GC_SVC_NAME_VPNBRIDGE, SW_CMP_VPN_BRIDGE, ICO_CASCADE, 7, L"vpnbridge.exe",
SW_LONG_VPNBRIDGE, false, sizeof(vpn_bridge_files) / sizeof(char *), vpn_bridge_files,
(MsIsX64() ? L"vpnsmgr_x64.exe" : L"vpnsmgr.exe"), _UU("SW_RUN_TEXT_VPNSMGR"),
L"vpnsmgr.exe", _UU("SW_RUN_TEXT_VPNSMGR"),
old_msi_vpnbridge, sizeof(old_msi_vpnbridge) / sizeof(SW_OLD_MSI));
Add(sw->ComponentList, c);
// VPN Server Manager (Tools Only)
c = SwNewComponent(SW_NAME_VPNSMGR, NULL, SW_CMP_VPN_SMGR, ICO_USER_ADMIN, 8, NULL,
SW_LONG_VPNSMGR, false, sizeof(vpn_smgr_files) / sizeof(char *), vpn_smgr_files,
(MsIsX64() ? L"vpnsmgr_x64.exe" : L"vpnsmgr.exe"), _UU("SW_RUN_TEXT_VPNSMGR"),
L"vpnsmgr.exe", _UU("SW_RUN_TEXT_VPNSMGR"),
NULL, 0);
Add(sw->ComponentList, c);
// VPN Client Manager (Tools Only)
c = SwNewComponent(SW_NAME_VPNCMGR, NULL, SW_CMP_VPN_CMGR, ICO_INTERNET, 9, NULL,
SW_LONG_VPNCMGR, false, sizeof(vpn_cmgr_files) / sizeof(char *), vpn_cmgr_files,
(MsIsX64() ? L"vpncmgr_x64.exe /remote" : L"vpncmgr.exe /remote"), _UU("SW_RUN_TEXT_VPNCMGR"),
L"vpncmgr.exe /remote", _UU("SW_RUN_TEXT_VPNCMGR"),
NULL, 0);
Add(sw->ComponentList, c);
}

View File

@ -1842,25 +1842,12 @@ void RegistWindowsFirewallAll()
void RegistWindowsFirewallAllEx(char *dir)
{
MsRegistWindowsFirewallEx2(CEDAR_CLIENT_STR, "vpnclient.exe", dir);
MsRegistWindowsFirewallEx2(CEDAR_CLIENT_STR, "vpnclient_x64.exe", dir);
MsRegistWindowsFirewallEx2(CEDAR_CLIENT_MANAGER_STR, "vpncmgr.exe", dir);
MsRegistWindowsFirewallEx2(CEDAR_CLIENT_MANAGER_STR, "vpncmgr_x64.exe", dir);
MsRegistWindowsFirewallEx2(CEDAR_MANAGER_STR, "vpnsmgr.exe", dir);
MsRegistWindowsFirewallEx2(CEDAR_MANAGER_STR, "vpnsmgr_x64.exe", dir);
MsRegistWindowsFirewallEx2(CEDAR_SERVER_STR, "vpnserver.exe", dir);
MsRegistWindowsFirewallEx2(CEDAR_SERVER_STR, "vpnserver_x64.exe", dir);
MsRegistWindowsFirewallEx2(CEDAR_BRIDGE_STR, "vpnbridge.exe", dir);
MsRegistWindowsFirewallEx2(CEDAR_BRIDGE_STR, "vpnbridge_x64.exe", dir);
MsRegistWindowsFirewallEx2(CEDAR_CUI_STR, "vpncmd.exe", dir);
MsRegistWindowsFirewallEx2(CEDAR_CUI_STR, "vpncmd_x64.exe", dir);
MsRegistWindowsFirewallEx2(CEDAR_PRODUCT_STR, "vpntest.exe", dir);
MsRegistWindowsFirewallEx2(CEDAR_PRODUCT_STR, "vpntest_x64.exe", dir);
}
// Check whether the notification service is already running
@ -10125,11 +10112,11 @@ void InitWinUi(wchar_t *software_name, char *font, UINT fontsize)
{
if (Is64())
{
hDll = MsLoadLibraryAsDataFile(MsGetPenCoreDllFileName());
hDll = MsLoadLibraryAsDataFile(PENCORE_DLL_NAME);
}
else
{
hDll = MsLoadLibrary(MsGetPenCoreDllFileName());
hDll = MsLoadLibrary(PENCORE_DLL_NAME);
}
if (hDll == NULL)

View File

@ -16,7 +16,7 @@
#endif // WINDOWS_H
#if !defined(ENCRYPT_C) && !defined(HAM_C)
#if !defined(ENCRYPT_C)
// Structure which is used by OpenSSL
typedef struct x509_st X509;
typedef struct evp_pkey_st EVP_PKEY;

View File

@ -12,11 +12,7 @@
#include <stddef.h>
#include <stdio.h>
// PenCore.dll related
#define PENCORE_DLL_NAME "|PenCore.dll"
// #define PENCORE_DLL_NAME_X64 "|PenCore_x64.dll" // commonized to x86
// #define PENCORE_DLL_NAME_IA64 "|PenCore_ia64.dll" // commonized to x86
//#define USE_PROBE // Use Probe

View File

@ -2098,7 +2098,6 @@ bool MsExecDriverInstaller(char *arg)
HANDLE h;
UINT retcode;
SHELLEXECUTEINFOW info;
wchar_t *src_exe;
wchar_t *arg_w;
// Validate arguments
if (arg == NULL)
@ -2110,20 +2109,9 @@ bool MsExecDriverInstaller(char *arg)
UniFormat(hamcore_src, sizeof(hamcore_src), L"%s\\hamcore.se2", MsGetExeDirNameW());
// Extract the File
src_exe = VISTA_DRIVER_INSTALLER_SRC;
if (MsIsX64())
{
src_exe = VISTA_DRIVER_INSTALLER_SRC_X64;
}
if (MsIsIA64())
{
src_exe = VISTA_DRIVER_INSTALLER_SRC_IA64;
}
UniFormat(tmp, sizeof(tmp), VISTA_DRIVER_INSTALLER_DST, MsGetMyTempDirW());
if (FileCopyW(src_exe, tmp) == false)
if (FileCopyW(VISTA_DRIVER_INSTALLER_SRC, tmp) == false)
{
return false;
}
@ -3938,26 +3926,6 @@ LRESULT CALLBACK MsUserModeWindowProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM
return DefWindowProc(hWnd, msg, wParam, lParam);
}
// Get the name of PenCore.dll
char *MsGetPenCoreDllFileName()
{
/*if (Is64())
{
if (IsX64())
{
return PENCORE_DLL_NAME_X64;
}
else
{
return PENCORE_DLL_NAME_IA64;
}
}
else*/
{
return PENCORE_DLL_NAME;
}
}
// Get whether this instance is in user mode
bool MsIsUserMode()
{
@ -4304,11 +4272,11 @@ void MsUserModeW(wchar_t *title, SERVICE_FUNCTION *start, SERVICE_FUNCTION *stop
if (Is64())
{
hDll = MsLoadLibraryAsDataFile(MsGetPenCoreDllFileName());
hDll = MsLoadLibraryAsDataFile(PENCORE_DLL_NAME);
}
else
{
hDll = MsLoadLibrary(MsGetPenCoreDllFileName());
hDll = MsLoadLibrary(PENCORE_DLL_NAME);
}
// Read icon
@ -4877,15 +4845,7 @@ UINT MsService(char *name, SERVICE_FUNCTION *start, SERVICE_FUNCTION *stop, UINT
wchar_t filename[MAX_PATH];
UniFormat(filename, sizeof(filename), L"\"%s\"", arg_w);
if (Is64() == false)
{
UniFormat(vpncmgr, sizeof(vpncmgr), L"%s\\vpncmgr.exe", MsGetExeDirNameW());
}
else
{
UniFormat(vpncmgr, sizeof(vpncmgr), L"%s\\vpncmgr_x64.exe", MsGetExeDirNameW());
}
UniFormat(vpncmgr, sizeof(vpncmgr), L"%s\\vpncmgr.exe", MsGetExeDirNameW());
RunW(vpncmgr, filename, false, false);
}

View File

@ -133,10 +133,8 @@ typedef void *HWND;
// Vista driver installer related
#define VISTA_DRIVER_INSTALLER_SRC L"|driver_installer.exe"
#define VISTA_DRIVER_INSTALLER_SRC_X64 L"|driver_installer_x64.exe"
#define VISTA_DRIVER_INSTALLER_SRC_IA64 L"|driver_installer_ia64.exe"
#define VISTA_DRIVER_INSTALLER_DST L"%s\\driver_installer.exe"
#define VISTA_DRIVER_INSTALLER_SRC L"|vpndrvinst.exe"
#define VISTA_DRIVER_INSTALLER_DST L"%s\\vpndrvinst.exe"
#define DRIVER_DEVICE_ID_TAG "NeoAdapter_%s"
@ -741,7 +739,6 @@ void MsServiceMode(SERVICE_FUNCTION *start, SERVICE_FUNCTION *stop);
void MsUserModeW(wchar_t *title, SERVICE_FUNCTION *start, SERVICE_FUNCTION *stop, UINT icon);
bool MsIsUserMode();
void MsTestOnly();
char *MsGetPenCoreDllFileName();
void MsPlaySound(char *name);
void MsSetThreadSingleCpu();
void MsWin9xTest();

View File

@ -1 +0,0 @@
TanakaJiro!!!

View File

@ -7178,7 +7178,6 @@ SW_DIR_DST_IS_SYSTEM_MODE 同样的软件已经在指定目录中以系统模
SW_DIR_DST_IS_USER_MODE 同样的软件已经在指定目录中以用户模式安装。\r\n\r\n请指定另外一个目录。
SW_SYSTEM_MODE_ALREADY_INSTALLED 本软件 "%s" 以系统模式被安装在这台电脑上。\r\n\r\n同样的软件以用户模式和系统模式安装在同一台电脑上会发生冲突。\r\n\r\n您确定要以用户模式继续进行安装
SW_NOT_INSTALL_SRC 安装程序已在一个外部的安装源执行。\r\n\r\n不能再继续安装。
SW_SETUPLOG_CORRUPTED "setuplog.dat" 文件已被破坏。
SW_MSI_UNINSTALL_FAILED 之前的版本 %s (产品号: "%S")已安装。 Windows安装工具卸载旧版本失败。\r\n\r\n请您手动卸载并且重启本安装工具。
SW_MSI_UNINSTALL_REBOOT_REQUIRED Windows 安装工具已经卸载旧版本 %s。请重启电脑。\r\n\r\n点击结束按钮并且手动重启电脑然后在电脑重启后重启本安装工具。

View File

@ -7171,7 +7171,6 @@ SW_DIR_DST_IS_SYSTEM_MODE The same software is already installed on the spec
SW_DIR_DST_IS_USER_MODE The same software is already installed on the specified directory as the User Mode.\r\n\r\nPlease specify another directory.
SW_SYSTEM_MODE_ALREADY_INSTALLED The software "%s" is already installed on this computer as the System Mode.\r\n\r\nBoth the System Mode and the User Mode installation of the same software on the same computer will conflict.\r\n\r\nDo you really want to continue the installation as the User Mode?
SW_NOT_INSTALL_SRC The setup program has been executed from outside an install source.\r\n\r\nUnable to continue the installation.
SW_SETUPLOG_CORRUPTED The "setuplog.dat" file is broken.
SW_MSI_UNINSTALL_FAILED The older version of %s (Product Code: "%S") is installed. Windows Installer failed to uninstall this older version.\r\n\r\nPlease uninstall this older version manually and restart this installer again.
SW_MSI_UNINSTALL_REBOOT_REQUIRED Windows Installer has uninstalled the older version of %s. The reboot of computer is required.\r\n\r\nPress Finish button and reboot the computer MANUALLY, and restart this installer after the reboot.

View File

@ -7173,7 +7173,6 @@ SW_DIR_DST_IS_SYSTEM_MODE 指定されたディレクトリにはすでに
SW_DIR_DST_IS_USER_MODE 指定されたディレクトリにはすでに本ソフトウェアがユーザーモードでインストールされています。\r\n\r\n別のディレクトリを指定してください。
SW_SYSTEM_MODE_ALREADY_INSTALLED ソフトウェア 「%s」 はすでにこのコンピュータにシステムモードでインストールされています。\r\n\r\n同一コンピュータに同一コンポーネントをシステムモードとユーザーモードの両方でインストールする場合は競合が発生する場合があります。\r\n\r\n本当にユーザーモードでインストールを実行しますか?
SW_NOT_INSTALL_SRC セットアッププログラムがインストールソース以外から起動されました。\r\n\r\nインストールを続行できません。
SW_SETUPLOG_CORRUPTED setuplog.dat ファイルが破損しています。
SW_MSI_UNINSTALL_FAILED %s の古いバージョン (製品コード: "%S") を Windows Installer でアンインストールしようとしましたが、アンインストールに失敗しました。\r\n\r\nこのバージョンを手動でアンインストールしてから、再度このインストーラを起動してください。
SW_MSI_UNINSTALL_REBOOT_REQUIRED %s の古いバージョンを Windows Installer でアンインストールしました。コンピュータの再起動が必要です。\r\n\r\n「完了」をクリックしてから手動でコンピュータを再起動し、その後もう一度このインストーラを起動してください。

View File

@ -7149,7 +7149,6 @@ SW_DIR_DST_IS_SYSTEM_MODE 지정된 디렉토리에 이미 소프트웨어가
SW_DIR_DST_IS_USER_MODE 지정된 디렉토리에 이미 소프트웨어가 사용자 모드로 설치되어 있습니다. \r\n\r\n 다른 디렉토리를 지정하십시오.
SW_SYSTEM_MODE_ALREADY_INSTALLED 소프트웨어 '%s'는 이미이 컴퓨터 시스템 모드로 설치되어 있습니다. \r\n\r\n 동일한 컴퓨터에 동일한 구성 요소를 시스템 모드와 사용자 모드에서 설치하는 경우 충돌이 발생할 수 있습니다. \r\n\r\n 정말 사용자 모드에서 설치를 실행 하시겠습니까?
SW_NOT_INSTALL_SRC 설치 프로그램이 설치 소스 이외에서 시작되었습니다. \r\n\r\n 설치를 계속할 수 없습니다.
SW_SETUPLOG_CORRUPTED setuplog.dat 파일이 손상되어 있습니다.
SW_MSI_UNINSTALL_FAILED %s의 이전 버전 (제품 코드:"%S")을 Windows Installer에서 제거하려고했지만 제거에 실패했습니다. \r\n\r\n이 버전을 수동으로 제거하고 다시 설치 프로그램을 시작하십시오.
SW_MSI_UNINSTALL_REBOOT_REQUIRED %s의 이전 버전을 Windows Installer에서 제거했습니다. 컴퓨터를 다시 시작해야합니다. \r\n\r\n "완료"를 클릭하여 수동으로 컴퓨터를 다시 시작한 다음 다시 설치 프로그램을 시작하십시오.

View File

@ -6897,7 +6897,7 @@ SW_DIR_DST_IS_BROKEN Unable to read a file "%s" which is on the specified direct
SW_DIR_DST_IS_SYSTEM_MODE The same software is already installed on the specified directory as the System Mode.\r\n\r\nPlease specify another directory.
SW_DIR_DST_IS_USER_MODE The same software is already installed on the specified directory as the User Mode.\r\n\r\nPlease specify another directory.
SW_SYSTEM_MODE_ALREADY_INSTALLED The software "%s" is already installed on this computer as the System Mode.\r\n\r\nBoth the System Mode and the User Mode installation of the same software on the same computer will conflict.\r\n\r\nDo you really want to continue the installation as the User Mode?
SW_NOT_INSTALL_SRC The setup program has been executed from outside an install source.\r\n\r\nUnable to continue the installation.
SW_SETUPLOG_CORRUPTED The "setuplog.dat" file is broken.
SW_MSI_UNINSTALL_FAILED The older version of %s (Product Code: "%S") is installed. Windows Installer failed to uninstall this older version.\r\n\r\nPlease uninstall this older version manually and restart this installer again.
SW_MSI_UNINSTALL_REBOOT_REQUIRED Windows Installer has uninstalled the older version of %s. The reboot of computer is required.\r\n\r\nPress Finish button and reboot the computer MANUALLY, and restart this installer after the reboot.

View File

@ -7158,7 +7158,6 @@ SW_DIR_DST_IS_SYSTEM_MODE The same software is already installed on the spec
SW_DIR_DST_IS_USER_MODE The same software is already installed on the specified directory as the User Mode.\r\n\r\nPlease specify another directory.
SW_SYSTEM_MODE_ALREADY_INSTALLED The software "%s" is already installed on this computer as the System Mode.\r\n\r\nBoth the System Mode and the User Mode installation of the same software on the same computer will conflict.\r\n\r\nDo you really want to continue the installation as the User Mode?
SW_NOT_INSTALL_SRC The setup program has been executed from outside an install source.\r\n\r\nUnable to continue the installation.
SW_SETUPLOG_CORRUPTED The "setuplog.dat" file is broken.
SW_MSI_UNINSTALL_FAILED The older version of %s (Product Code: "%S") is installed. Windows Installer failed to uninstall this older version.\r\n\r\nPlease uninstall this older version manually and restart this installer again.
SW_MSI_UNINSTALL_REBOOT_REQUIRED Windows Installer has uninstalled the older version of %s. The reboot of computer is required.\r\n\r\nPress Finish button and reboot the computer MANUALLY, and restart this installer after the reboot.

View File

@ -7180,7 +7180,6 @@ SW_DIR_DST_IS_SYSTEM_MODE 同樣的軟體已經在指定目錄中以系統模
SW_DIR_DST_IS_USER_MODE 同樣的軟體已經在指定目錄中以使用者模式安裝。\r\n\r\n請指定另外一個目錄。
SW_SYSTEM_MODE_ALREADY_INSTALLED 本軟體 "%s" 以系統模式被安裝在這台電腦上。\r\n\r\n同樣的軟體以使用者模式和系統模式安裝在同一台電腦上會發生衝突。\r\n\r\n您確定要以使用者模式繼續進行安裝
SW_NOT_INSTALL_SRC 安裝程式已在一個外部的安裝源執行。\r\n\r\n不能再繼續安裝。
SW_SETUPLOG_CORRUPTED "setuplog.dat" 檔已被破壞。
SW_MSI_UNINSTALL_FAILED 之前的版本 %s (產品號: "%S")已安裝。 Windows安裝工具移除舊版本失敗。\r\n\r\n請您手動移除並且重啟本安裝工具。
SW_MSI_UNINSTALL_REBOOT_REQUIRED Windows 安裝工具已經移除舊版本 %s。請重啟電腦。\r\n\r\n點擊結束按鈕並且手動重啟電腦然後在電腦重啟後重啟本安裝工具。

View File

@ -1 +0,0 @@
TanakaJiro!!!

View File

@ -0,0 +1,33 @@
if(NOT WIN32)
message(FATAL_ERROR "VPN Driver Installer is available only for Windows.")
endif()
set(COMPONENT_NAME "Driver Installer")
set(COMPONENT_INTERNAL_NAME "vpndrvinst")
add_executable(vpndrvinst WIN32 vpndrvinst.c vpndrvinst.h)
get_filename_component(COMPONENT_FILE_NAME vpndrvinst NAME)
set(COMPONENT_FILE_NAME "${COMPONENT_FILE_NAME}.exe")
configure_file("${TOP_DIRECTORY}/src/BuildFiles/VerScript/ver.rc" "${CMAKE_CURRENT_BINARY_DIR}/ver.rc")
target_sources(vpndrvinst PRIVATE "vpndrvinst.rc" "${CMAKE_CURRENT_BINARY_DIR}/ver.rc")
# Fixes manifest authoring error c1010001
set_target_properties(vpndrvinst PROPERTIES LINK_FLAGS "/MANIFESTUAC:level='requireAdministrator'")
if(${COMPILER_ARCHITECTURE} STREQUAL "x64")
target_sources(vpndrvinst PRIVATE "${TOP_DIRECTORY}/src/BuildFiles/Manifests/x64_admin.manifest")
else()
target_sources(vpndrvinst PRIVATE "${TOP_DIRECTORY}/src/BuildFiles/Manifests/x86_admin.manifest")
endif()
set_target_properties(vpndrvinst
PROPERTIES
ARCHIVE_OUTPUT_DIRECTORY "${TOP_DIRECTORY}/src/bin/hamcore"
LIBRARY_OUTPUT_DIRECTORY "${TOP_DIRECTORY}/src/bin/hamcore"
RUNTIME_OUTPUT_DIRECTORY "${TOP_DIRECTORY}/src/bin/hamcore"
PDB_OUTPUT_DIRECTORY "${BUILD_DIRECTORY}"
)
target_link_libraries(vpndrvinst cedar mayaqua)

View File

@ -4,8 +4,6 @@
#include <GlobalConst.h>
#define HAM_C
#ifdef WIN32
#define HAM_WIN32
#define _WIN32_WINNT 0x0502
@ -27,17 +25,6 @@
#include <time.h>
#include <errno.h>
#include <math.h>
#include <openssl/ssl.h>
#include <openssl/err.h>
#include <openssl/rand.h>
#include <openssl/engine.h>
#include <openssl/bio.h>
#include <openssl/x509.h>
#include <openssl/pkcs7.h>
#include <openssl/pkcs12.h>
#include <openssl/rc4.h>
#include <openssl/md5.h>
#include <openssl/sha.h>
#include <Mayaqua/Mayaqua.h>
#include <Cedar/Cedar.h>
#include "vpndrvinst.h"

View File

@ -0,0 +1,30 @@
if(NOT WIN32)
message(FATAL_ERROR "VPN Setup is available only for Windows.")
endif()
set(COMPONENT_NAME "Setup")
set(COMPONENT_INTERNAL_NAME "vpnsetup")
add_executable(vpnsetup WIN32 vpnsetup.c vpnsetup.rc)
get_filename_component(COMPONENT_FILE_NAME vpnsetup NAME)
set(COMPONENT_FILE_NAME "${COMPONENT_FILE_NAME}.exe")
configure_file("${TOP_DIRECTORY}/src/BuildFiles/VerScript/ver.rc" "${CMAKE_CURRENT_BINARY_DIR}/ver.rc")
target_sources(vpnsetup PRIVATE "vpnsetup.rc" "${CMAKE_CURRENT_BINARY_DIR}/ver.rc")
if(${COMPILER_ARCHITECTURE} STREQUAL "x64")
target_sources(vpnsetup PRIVATE "${TOP_DIRECTORY}/src/BuildFiles/Manifests/x64_user.manifest")
else()
target_sources(vpnsetup PRIVATE "${TOP_DIRECTORY}/src/BuildFiles/Manifests/x86_user.manifest")
endif()
set_target_properties(vpnsetup
PROPERTIES
ARCHIVE_OUTPUT_DIRECTORY "${BUILD_DIRECTORY}"
LIBRARY_OUTPUT_DIRECTORY "${BUILD_DIRECTORY}"
RUNTIME_OUTPUT_DIRECTORY "${BUILD_DIRECTORY}"
PDB_OUTPUT_DIRECTORY "${BUILD_DIRECTORY}"
)
target_link_libraries(vpnsetup cedar mayaqua)