From eb72fe7aa9aa4be3de58c8dd04b15a42c7634448 Mon Sep 17 00:00:00 2001 From: Mounir IDRASSI Date: Mon, 5 Jun 2017 01:38:22 +0200 Subject: Windows: move language XML files to new "Languages" folder in the installation directory. --- src/Common/Language.c | 3 +- src/Mount/Mount.c | 10 ++++-- src/Setup/Setup.c | 39 ++++++--------------- src/Setup/Setup.h | 76 ++--------------------------------------- src/Signing/sign.bat | 9 +++-- src/Signing/sign_test.bat | 9 +++-- src/Signing/sign_test_debug.bat | 9 +++-- 7 files changed, 44 insertions(+), 111 deletions(-) (limited to 'src') diff --git a/src/Common/Language.c b/src/Common/Language.c index 9df6e2aa..82664445 100644 --- a/src/Common/Language.c +++ b/src/Common/Language.c @@ -103,7 +103,7 @@ static char *MapNextLanguageFile () if (t == NULL) return NULL; *t = 0; - StringCbCatW (f, sizeof(f), L"\\Language*.xml"); + StringCbCatW (f, sizeof(f), L"\\Languages\\Language*.xml"); LanguageFileFindHandle = FindFirstFileW (f, &find); } @@ -130,6 +130,7 @@ static char *MapNextLanguageFile () } t[1] = 0; + StringCbCatW (f, sizeof(f), L"Languages\\"); StringCbCatW (f, sizeof(f),find.cFileName); file = CreateFileW (f, GENERIC_READ, 0, NULL, OPEN_EXISTING, 0, NULL); diff --git a/src/Mount/Mount.c b/src/Mount/Mount.c index eca25c8f..50f6e8f0 100644 --- a/src/Mount/Mount.c +++ b/src/Mount/Mount.c @@ -4359,8 +4359,14 @@ BOOL CALLBACK TravelerDlgProc (HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lPa if (strcmp (GetPreferredLangId (), "en") != 0) { // Language pack - StringCbPrintfW (srcPath, sizeof(srcPath), L"%s\\Language.%hs.xml", appDir, GetPreferredLangId ()); - StringCbPrintfW (dstPath, sizeof(dstPath), L"%s\\VeraCrypt\\Language.%hs.xml", dstDir, GetPreferredLangId ()); + StringCbPrintfW (dstPath, sizeof(dstPath), L"%s\\VeraCrypt\\Languages", dstDir); + if (!CreateDirectoryW (dstPath, NULL)) + { + handleWin32Error (hwndDlg, SRC_POS); + goto stop; + } + StringCbPrintfW (srcPath, sizeof(srcPath), L"%s\\Languages\\Language.%hs.xml", appDir, GetPreferredLangId ()); + StringCbPrintfW (dstPath, sizeof(dstPath), L"%s\\VeraCrypt\\Languages\\Language.%hs.xml", dstDir, GetPreferredLangId ()); TCCopyFile (srcPath, dstPath); } diff --git a/src/Setup/Setup.c b/src/Setup/Setup.c index b08ded64..367aaf90 100644 --- a/src/Setup/Setup.c +++ b/src/Setup/Setup.c @@ -1015,14 +1015,15 @@ err: return FALSE; } } - - // remove PDF from previous version if any + if (bUninstall == FALSE) { WIN32_FIND_DATA f; HANDLE h; SetCurrentDirectory (szDestDir); + + // remove PDF from previous version if any h = FindFirstFile (L"VeraCrypt User Guide*.pdf", &f); if (h != INVALID_HANDLE_VALUE) @@ -1036,38 +1037,20 @@ err: FindClose (h); } - SetCurrentDirectory (SetupFilesDir); - } - - // Language pack - if (bUninstall == FALSE) - { - WIN32_FIND_DATA f; - HANDLE h; - - SetCurrentDirectory (SetupFilesDir); - h = FindFirstFile (L"Language.*.xml", &f); + // remove language XML files from previous version if any + h = FindFirstFile (L"Language*.xml", &f); if (h != INVALID_HANDLE_VALUE) { - wchar_t d[MAX_PATH*2]; - StringCbPrintfW (d, sizeof(d), L"%s%s", szDestDir, f.cFileName); - CopyMessage (hwndDlg, d); - TCCopyFile (f.cFileName, d); - FindClose (h); - } + do + { + StatDeleteFile (f.cFileName, TRUE); + } + while (FindNextFile(h, &f) != 0); - SetCurrentDirectory (SetupFilesDir); - SetCurrentDirectory (L"Setup files"); - h = FindFirstFile (L"VeraCrypt User Guide.*.chm", &f); - if (h != INVALID_HANDLE_VALUE) - { - wchar_t d[MAX_PATH*2]; - StringCbPrintfW (d, sizeof(d), L"%s%s", szDestDir, f.cFileName); - CopyMessage (hwndDlg, d); - TCCopyFile (f.cFileName, d); FindClose (h); } + SetCurrentDirectory (SetupFilesDir); } diff --git a/src/Setup/Setup.h b/src/Setup/Setup.h index 1fc2e1b3..574d48c1 100644 --- a/src/Setup/Setup.h +++ b/src/Setup/Setup.h @@ -37,43 +37,7 @@ static wchar_t *szFiles[]= L"Averacrypt-x64.sys", L"Dveracrypt.sys", L"AVeraCrypt Setup.exe", - L"ALanguage.ar.xml", - L"ALanguage.be.xml", - L"ALanguage.bg.xml", - L"ALanguage.ca.xml", - L"ALanguage.cs.xml", - L"ALanguage.da.xml", - L"ALanguage.de.xml", - L"ALanguage.el.xml", - L"ALanguage.es.xml", - L"ALanguage.et.xml", - L"ALanguage.eu.xml", - L"ALanguage.fa.xml", - L"ALanguage.fi.xml", - L"ALanguage.fr.xml", - L"ALanguage.hu.xml", - L"ALanguage.id.xml", - L"ALanguage.it.xml", - L"ALanguage.ja.xml", - L"ALanguage.ka.xml", - L"ALanguage.ko.xml", - L"ALanguage.lv.xml", - L"ALanguage.my.xml", - L"ALanguage.nl.xml", - L"ALanguage.nn.xml", - L"ALanguage.pl.xml", - L"ALanguage.pt-br.xml", - L"ALanguage.ru.xml", - L"ALanguage.sk.xml", - L"ALanguage.sl.xml", - L"ALanguage.sv.xml", - L"ALanguage.tr.xml", - L"ALanguage.uk.xml", - L"ALanguage.uz.xml", - L"ALanguage.vi.xml", - L"ALanguage.zh-cn.xml", - L"ALanguage.zh-hk.xml", - L"ALanguage.zh-tw.xml", + L"XLanguages.zip", L"Xdocs.zip", }; @@ -91,43 +55,7 @@ static wchar_t *szCompressedFiles[]= L"VeraCrypt Format-x64.exe", L"veracrypt.sys", L"veracrypt-x64.sys", - L"Language.ar.xml", - L"Language.be.xml", - L"Language.bg.xml", - L"Language.ca.xml", - L"Language.cs.xml", - L"Language.da.xml", - L"Language.de.xml", - L"Language.el.xml", - L"Language.es.xml", - L"Language.et.xml", - L"Language.eu.xml", - L"Language.fa.xml", - L"Language.fi.xml", - L"Language.fr.xml", - L"Language.hu.xml", - L"Language.id.xml", - L"Language.it.xml", - L"Language.ja.xml", - L"Language.ka.xml", - L"Language.ko.xml", - L"Language.lv.xml", - L"Language.my.xml", - L"Language.nl.xml", - L"Language.nn.xml", - L"Language.pl.xml", - L"Language.pt-br.xml", - L"Language.ru.xml", - L"Language.sk.xml", - L"Language.sl.xml", - L"Language.sv.xml", - L"Language.tr.xml", - L"Language.uk.xml", - L"Language.uz.xml", - L"Language.vi.xml", - L"Language.zh-cn.xml", - L"Language.zh-hk.xml", - L"Language.zh-tw.xml", + L"Languages.zip", L"docs.zip" }; diff --git a/src/Signing/sign.bat b/src/Signing/sign.bat index 837c366a..e4d22555 100644 --- a/src/Signing/sign.bat +++ b/src/Signing/sign.bat @@ -23,7 +23,11 @@ copy ..\..\License.txt . copy ..\..\NOTICE . del *.xml -copy /V /Y ..\..\..\Translations\*.xml . +rmdir /S /Q Languages +mkdir Languages +copy /V /Y ..\..\..\Translations\*.xml Languages\. +del Languages.zip +7z a -y Languages.zip Languages rmdir /S /Q docs mkdir docs\html\en @@ -40,8 +44,9 @@ del License.txt del NOTICE del "VeraCrypt User Guide.chm" -del *.xml +del Languages.zip del docs.zip +rmdir /S /Q Languages rmdir /S /Q docs cd %SIGNINGPATH% diff --git a/src/Signing/sign_test.bat b/src/Signing/sign_test.bat index 3344d211..0550ba48 100644 --- a/src/Signing/sign_test.bat +++ b/src/Signing/sign_test.bat @@ -27,7 +27,11 @@ copy ..\..\License.txt . copy ..\..\NOTICE . del *.xml -copy /V /Y ..\..\..\Translations\*.xml . +rmdir /S /Q Languages +mkdir Languages +copy /V /Y ..\..\..\Translations\*.xml Languages\. +del Languages.zip +7z a -y Languages.zip Languages rmdir /S /Q docs mkdir docs\html\en @@ -44,8 +48,9 @@ del License.txt del NOTICE del "VeraCrypt User Guide.chm" -del *.xml +del Languages.zip del docs.zip +rmdir /S /Q Languages rmdir /S /Q docs cd %SIGNINGPATH% diff --git a/src/Signing/sign_test_debug.bat b/src/Signing/sign_test_debug.bat index 92b04c15..263aa13e 100644 --- a/src/Signing/sign_test_debug.bat +++ b/src/Signing/sign_test_debug.bat @@ -27,7 +27,11 @@ copy ..\..\License.txt . copy ..\..\NOTICE . del *.xml -copy /V /Y ..\..\..\Translations\*.xml . +rmdir /S /Q Languages +mkdir Languages +copy /V /Y ..\..\..\Translations\*.xml Languages\. +del Languages.zip +7z a -y Languages.zip Languages rmdir /S /Q docs mkdir docs\html\en @@ -44,8 +48,9 @@ del License.txt del NOTICE del "VeraCrypt User Guide.chm" -del *.xml +del Languages.zip del docs.zip +rmdir /S /Q Languages rmdir /S /Q docs cd %SIGNINGPATH% -- cgit v1.2.3