diff --git a/.gitignore b/.gitignore index 01b30b4f..79a5e270 100644 --- a/.gitignore +++ b/.gitignore @@ -50,3 +50,4 @@ deploy *.pvk /src/SyncTrayzor/Icons/*.png security/private_key.asc +chocolatey/tools/LICENSE.txt diff --git a/CHANGELOG.md b/CHANGELOG.md index 1ffdb7ea..f3f037c0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,12 @@ Changelog ========= +v1.1.26 +------- + + - Fix the problems in v1.1.25 (#594, #595, #596, #597) + - Uninstaller tries to remove autostart registry keys (#586) + v1.1.25 ------- diff --git a/Rakefile b/Rakefile index 0392f801..d108e7b8 100644 --- a/Rakefile +++ b/Rakefile @@ -177,7 +177,7 @@ namespace :portable do files = FileList['**/*'].exclude( '*.xml', '*.vshost.*', '*.log', '*.Installer.config', '*/FluentValidation.resources.dll', '*/System.Windows.Interactivity.resources.dll', 'syncthing.exe', 'data/*', 'logs', - 'ffmpegsumo.dll', 'd3dcompiler_43.dll', 'd3dcompiler_47.dll', 'libEGL.dll', 'libGLESv2.dll', 'pdf.dll') + 'd3dcompiler_47.dll', 'libEGL.dll', 'libGLESv2.dll', 'swiftshader/libEGL.dll', 'swiftshader/libGLESv2.dll',) files.each do |file| cp_to_portable(portable_dir, file) @@ -194,10 +194,12 @@ namespace :portable do cp_to_portable(portable_dir, file) end - Dir.chdir(arch_config.installer_dir) do + Dir.chdir(File.join(arch_config.installer_dir, 'ucrt')) do FileList['*.dll'].each do |file| cp_to_portable(portable_dir, file) end + end + Dir.chdir(arch_config.installer_dir) do cp_to_portable(portable_dir, arch_config.syncthing_binaries[PORTABLE_SYNCTHING_VERSION], 'syncthing.exe') end @@ -253,6 +255,7 @@ desc 'Build chocolatey package' task :chocolatey do chocolatey_dir = File.dirname(CHOCOLATEY_NUSPEC) cp Dir[File.join(DEPLOY_DIR, 'SyncTrayzorSetup-*.exe')], File.join(chocolatey_dir, 'tools') + cp 'LICENSE.txt', File.join(chocolatey_dir, 'tools') Dir.chdir(chocolatey_dir) do sh "choco pack" end diff --git a/chocolatey/tools/VERIFICATION.txt b/chocolatey/tools/VERIFICATION.txt new file mode 100644 index 00000000..733a0031 --- /dev/null +++ b/chocolatey/tools/VERIFICATION.txt @@ -0,0 +1,7 @@ +VERIFICATION +Verification is intended to assist the Chocolatey moderators and community +in verifying that this package's contents are trustworthy. + +This package is published by the developer of SyncTrayzor. +Binaries are identical to the setup binaries available at the GitHub release page: +https://github.com/canton7/SyncTrayzor/releases \ No newline at end of file diff --git a/installer/common.iss b/installer/common.iss index 7afc1448..4c7e65db 100644 --- a/installer/common.iss +++ b/installer/common.iss @@ -1,4 +1,3 @@ - #define AppExeName "SyncTrayzor.exe" #define AppRoot "..\.." #define AppSrc AppRoot + "\src\SyncTrayzor" @@ -67,12 +66,12 @@ Name: "{userappdata}\{#AppDataFolder}" ; Near the beginning, as it's extracted first and this makes it cheaper Source: "..\{#DotNetInstallerExe}"; DestDir: {tmp}; Flags: dontcopy nocompression noencryption -Source: "{#AppBin}\*"; DestDir: "{app}"; Excludes: "*.xml,*.vshost.*,*.config,*.log,FluentValidation.resources.dll,System.Windows.Interactivity.resources.dll,syncthing.exe,data,logs,ffmpegsumo.dll,d3dcompiler_43.dll,d3dcompiler_47.dll,libEGL.dll,libGLESv2.dll,pdf.dll"; Flags: ignoreversion recursesubdirs +Source: "{#AppBin}\*"; DestDir: "{app}"; Excludes: "*.xml,*.vshost.*,*.config,*.log,FluentValidation.resources.dll,System.Windows.Interactivity.resources.dll,syncthing.exe,data,logs,cef_extensions.pak,d3dcompiler_47.dll,libEGL.dll,libGLESv2.dll,swiftshader/libEGL.dll,swiftshader/libGLESv2.dll"; Flags: ignoreversion recursesubdirs Source: "{#AppBin}\SyncTrayzor.exe.Installer.config"; DestDir: "{app}"; DestName: "SyncTrayzor.exe.config"; Flags: ignoreversion Source: "{#AppSrc}\Icons\default.ico"; DestDir: "{app}"; Flags: ignoreversion Source: "{#AppRoot}\*.md"; DestDir: "{app}"; Flags: ignoreversion Source: "{#AppRoot}\*.txt"; DestDir: "{app}"; Flags: ignoreversion -Source: "*.dll"; DestDir: "{app}"; Flags: ignoreversion +Source: "ucrt\*.dll"; DestDir: "{app}"; Flags: ignoreversion; OnlyBelowVersion: 10.0 Source: "syncthing.exe"; DestDir: "{app}"; DestName: "syncthing.exe"; Flags: ignoreversion [Icons] @@ -282,8 +281,38 @@ begin end; end; +// We won't be able to find keys for users other than the one running the installer, but try and do +// a best-effort attempt to cleaning ourselves up. +procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep); +var + keyValueNames: TArrayOfString; + keyValue: String; + i: Integer; +begin + if CurUninstallStep = usPostUninstall then + begin + if RegGetValueNames(HKEY_CURRENT_USER, 'SOFTWARE\Microsoft\Windows\CurrentVersion\Run', keyValueNames) then + begin + for i := 0 to GetArrayLength(keyValueNames)-1 do + begin + if Pos('SyncTrayzor', keyValueNames[i]) = 1 then + begin + if RegQueryStringValue(HKEY_CURRENT_USER, 'SOFTWARE\Microsoft\Windows\CurrentVersion\Run', keyValueNames[i], keyValue) then + begin + if Pos(ExpandConstant('"{app}\{#AppExeName}"'), keyValue) = 1 then + begin + RegDeleteValue(HKEY_CURRENT_USER, 'SOFTWARE\Microsoft\Windows\CurrentVersion\Run', keyValueNames[i]); + end; + end; + end + end; + end; + end; +end; + [UninstallDelete] Type: files; Name: "{app}\ProcessRunner.exe.old" Type: files; Name: "{app}\InstallCount.txt" Type: filesandordirs; Name: "{userappdata}\{#AppDataFolder}" Type: filesandordirs; Name: "{localappdata}\{#AppDataFolder}" + diff --git a/installer/x64/msvcp120.dll b/installer/x64/msvcp120.dll deleted file mode 100644 index 4ea1efa7..00000000 Binary files a/installer/x64/msvcp120.dll and /dev/null differ diff --git a/installer/x64/msvcr120.dll b/installer/x64/msvcr120.dll deleted file mode 100644 index d711c922..00000000 Binary files a/installer/x64/msvcr120.dll and /dev/null differ diff --git a/installer/x64/ucrt/api-ms-win-core-console-l1-1-0.dll b/installer/x64/ucrt/api-ms-win-core-console-l1-1-0.dll new file mode 100644 index 00000000..59df9b70 Binary files /dev/null and b/installer/x64/ucrt/api-ms-win-core-console-l1-1-0.dll differ diff --git a/installer/x64/ucrt/api-ms-win-core-console-l1-2-0.dll b/installer/x64/ucrt/api-ms-win-core-console-l1-2-0.dll new file mode 100644 index 00000000..255602a3 Binary files /dev/null and b/installer/x64/ucrt/api-ms-win-core-console-l1-2-0.dll differ diff --git a/installer/x64/ucrt/api-ms-win-core-datetime-l1-1-0.dll b/installer/x64/ucrt/api-ms-win-core-datetime-l1-1-0.dll new file mode 100644 index 00000000..770ae176 Binary files /dev/null and b/installer/x64/ucrt/api-ms-win-core-datetime-l1-1-0.dll differ diff --git a/installer/x64/ucrt/api-ms-win-core-debug-l1-1-0.dll b/installer/x64/ucrt/api-ms-win-core-debug-l1-1-0.dll new file mode 100644 index 00000000..cf936c96 Binary files /dev/null and b/installer/x64/ucrt/api-ms-win-core-debug-l1-1-0.dll differ diff --git a/installer/x64/ucrt/api-ms-win-core-errorhandling-l1-1-0.dll b/installer/x64/ucrt/api-ms-win-core-errorhandling-l1-1-0.dll new file mode 100644 index 00000000..31d9e308 Binary files /dev/null and b/installer/x64/ucrt/api-ms-win-core-errorhandling-l1-1-0.dll differ diff --git a/installer/x64/ucrt/api-ms-win-core-file-l1-1-0.dll b/installer/x64/ucrt/api-ms-win-core-file-l1-1-0.dll new file mode 100644 index 00000000..9a6c49fd Binary files /dev/null and b/installer/x64/ucrt/api-ms-win-core-file-l1-1-0.dll differ diff --git a/installer/x64/ucrt/api-ms-win-core-file-l1-2-0.dll b/installer/x64/ucrt/api-ms-win-core-file-l1-2-0.dll new file mode 100644 index 00000000..4166dc5a Binary files /dev/null and b/installer/x64/ucrt/api-ms-win-core-file-l1-2-0.dll differ diff --git a/installer/x64/ucrt/api-ms-win-core-file-l2-1-0.dll b/installer/x64/ucrt/api-ms-win-core-file-l2-1-0.dll new file mode 100644 index 00000000..c3730d5a Binary files /dev/null and b/installer/x64/ucrt/api-ms-win-core-file-l2-1-0.dll differ diff --git a/installer/x64/ucrt/api-ms-win-core-handle-l1-1-0.dll b/installer/x64/ucrt/api-ms-win-core-handle-l1-1-0.dll new file mode 100644 index 00000000..c6d92b28 Binary files /dev/null and b/installer/x64/ucrt/api-ms-win-core-handle-l1-1-0.dll differ diff --git a/installer/x64/ucrt/api-ms-win-core-heap-l1-1-0.dll b/installer/x64/ucrt/api-ms-win-core-heap-l1-1-0.dll new file mode 100644 index 00000000..71419b91 Binary files /dev/null and b/installer/x64/ucrt/api-ms-win-core-heap-l1-1-0.dll differ diff --git a/installer/x64/ucrt/api-ms-win-core-interlocked-l1-1-0.dll b/installer/x64/ucrt/api-ms-win-core-interlocked-l1-1-0.dll new file mode 100644 index 00000000..69b7ad1d Binary files /dev/null and b/installer/x64/ucrt/api-ms-win-core-interlocked-l1-1-0.dll differ diff --git a/installer/x64/ucrt/api-ms-win-core-libraryloader-l1-1-0.dll b/installer/x64/ucrt/api-ms-win-core-libraryloader-l1-1-0.dll new file mode 100644 index 00000000..f37503ed Binary files /dev/null and b/installer/x64/ucrt/api-ms-win-core-libraryloader-l1-1-0.dll differ diff --git a/installer/x64/ucrt/api-ms-win-core-localization-l1-2-0.dll b/installer/x64/ucrt/api-ms-win-core-localization-l1-2-0.dll new file mode 100644 index 00000000..5f938cca Binary files /dev/null and b/installer/x64/ucrt/api-ms-win-core-localization-l1-2-0.dll differ diff --git a/installer/x64/ucrt/api-ms-win-core-memory-l1-1-0.dll b/installer/x64/ucrt/api-ms-win-core-memory-l1-1-0.dll new file mode 100644 index 00000000..d3f895ae Binary files /dev/null and b/installer/x64/ucrt/api-ms-win-core-memory-l1-1-0.dll differ diff --git a/installer/x64/ucrt/api-ms-win-core-namedpipe-l1-1-0.dll b/installer/x64/ucrt/api-ms-win-core-namedpipe-l1-1-0.dll new file mode 100644 index 00000000..1d731299 Binary files /dev/null and b/installer/x64/ucrt/api-ms-win-core-namedpipe-l1-1-0.dll differ diff --git a/installer/x64/ucrt/api-ms-win-core-processenvironment-l1-1-0.dll b/installer/x64/ucrt/api-ms-win-core-processenvironment-l1-1-0.dll new file mode 100644 index 00000000..fa2d53df Binary files /dev/null and b/installer/x64/ucrt/api-ms-win-core-processenvironment-l1-1-0.dll differ diff --git a/installer/x64/ucrt/api-ms-win-core-processthreads-l1-1-0.dll b/installer/x64/ucrt/api-ms-win-core-processthreads-l1-1-0.dll new file mode 100644 index 00000000..13fc5dca Binary files /dev/null and b/installer/x64/ucrt/api-ms-win-core-processthreads-l1-1-0.dll differ diff --git a/installer/x64/ucrt/api-ms-win-core-processthreads-l1-1-1.dll b/installer/x64/ucrt/api-ms-win-core-processthreads-l1-1-1.dll new file mode 100644 index 00000000..551ef210 Binary files /dev/null and b/installer/x64/ucrt/api-ms-win-core-processthreads-l1-1-1.dll differ diff --git a/installer/x64/ucrt/api-ms-win-core-profile-l1-1-0.dll b/installer/x64/ucrt/api-ms-win-core-profile-l1-1-0.dll new file mode 100644 index 00000000..8f0fde38 Binary files /dev/null and b/installer/x64/ucrt/api-ms-win-core-profile-l1-1-0.dll differ diff --git a/installer/x64/ucrt/api-ms-win-core-rtlsupport-l1-1-0.dll b/installer/x64/ucrt/api-ms-win-core-rtlsupport-l1-1-0.dll new file mode 100644 index 00000000..89f12452 Binary files /dev/null and b/installer/x64/ucrt/api-ms-win-core-rtlsupport-l1-1-0.dll differ diff --git a/installer/x64/ucrt/api-ms-win-core-string-l1-1-0.dll b/installer/x64/ucrt/api-ms-win-core-string-l1-1-0.dll new file mode 100644 index 00000000..f2ee6dbb Binary files /dev/null and b/installer/x64/ucrt/api-ms-win-core-string-l1-1-0.dll differ diff --git a/installer/x64/ucrt/api-ms-win-core-synch-l1-1-0.dll b/installer/x64/ucrt/api-ms-win-core-synch-l1-1-0.dll new file mode 100644 index 00000000..b9541f0f Binary files /dev/null and b/installer/x64/ucrt/api-ms-win-core-synch-l1-1-0.dll differ diff --git a/installer/x64/ucrt/api-ms-win-core-synch-l1-2-0.dll b/installer/x64/ucrt/api-ms-win-core-synch-l1-2-0.dll new file mode 100644 index 00000000..2f1a432b Binary files /dev/null and b/installer/x64/ucrt/api-ms-win-core-synch-l1-2-0.dll differ diff --git a/installer/x64/ucrt/api-ms-win-core-sysinfo-l1-1-0.dll b/installer/x64/ucrt/api-ms-win-core-sysinfo-l1-1-0.dll new file mode 100644 index 00000000..1d1a3761 Binary files /dev/null and b/installer/x64/ucrt/api-ms-win-core-sysinfo-l1-1-0.dll differ diff --git a/installer/x64/ucrt/api-ms-win-core-timezone-l1-1-0.dll b/installer/x64/ucrt/api-ms-win-core-timezone-l1-1-0.dll new file mode 100644 index 00000000..95d4fc2e Binary files /dev/null and b/installer/x64/ucrt/api-ms-win-core-timezone-l1-1-0.dll differ diff --git a/installer/x64/ucrt/api-ms-win-core-util-l1-1-0.dll b/installer/x64/ucrt/api-ms-win-core-util-l1-1-0.dll new file mode 100644 index 00000000..fb2fc919 Binary files /dev/null and b/installer/x64/ucrt/api-ms-win-core-util-l1-1-0.dll differ diff --git a/installer/x64/ucrt/api-ms-win-crt-conio-l1-1-0.dll b/installer/x64/ucrt/api-ms-win-crt-conio-l1-1-0.dll new file mode 100644 index 00000000..771a68c1 Binary files /dev/null and b/installer/x64/ucrt/api-ms-win-crt-conio-l1-1-0.dll differ diff --git a/installer/x64/ucrt/api-ms-win-crt-convert-l1-1-0.dll b/installer/x64/ucrt/api-ms-win-crt-convert-l1-1-0.dll new file mode 100644 index 00000000..44fea9ab Binary files /dev/null and b/installer/x64/ucrt/api-ms-win-crt-convert-l1-1-0.dll differ diff --git a/installer/x64/ucrt/api-ms-win-crt-environment-l1-1-0.dll b/installer/x64/ucrt/api-ms-win-crt-environment-l1-1-0.dll new file mode 100644 index 00000000..d8a73990 Binary files /dev/null and b/installer/x64/ucrt/api-ms-win-crt-environment-l1-1-0.dll differ diff --git a/installer/x64/ucrt/api-ms-win-crt-filesystem-l1-1-0.dll b/installer/x64/ucrt/api-ms-win-crt-filesystem-l1-1-0.dll new file mode 100644 index 00000000..4a283712 Binary files /dev/null and b/installer/x64/ucrt/api-ms-win-crt-filesystem-l1-1-0.dll differ diff --git a/installer/x64/ucrt/api-ms-win-crt-heap-l1-1-0.dll b/installer/x64/ucrt/api-ms-win-crt-heap-l1-1-0.dll new file mode 100644 index 00000000..0ab3a324 Binary files /dev/null and b/installer/x64/ucrt/api-ms-win-crt-heap-l1-1-0.dll differ diff --git a/installer/x64/ucrt/api-ms-win-crt-locale-l1-1-0.dll b/installer/x64/ucrt/api-ms-win-crt-locale-l1-1-0.dll new file mode 100644 index 00000000..79d46f60 Binary files /dev/null and b/installer/x64/ucrt/api-ms-win-crt-locale-l1-1-0.dll differ diff --git a/installer/x64/ucrt/api-ms-win-crt-math-l1-1-0.dll b/installer/x64/ucrt/api-ms-win-crt-math-l1-1-0.dll new file mode 100644 index 00000000..f8b20922 Binary files /dev/null and b/installer/x64/ucrt/api-ms-win-crt-math-l1-1-0.dll differ diff --git a/installer/x64/ucrt/api-ms-win-crt-multibyte-l1-1-0.dll b/installer/x64/ucrt/api-ms-win-crt-multibyte-l1-1-0.dll new file mode 100644 index 00000000..31afd5a4 Binary files /dev/null and b/installer/x64/ucrt/api-ms-win-crt-multibyte-l1-1-0.dll differ diff --git a/installer/x64/ucrt/api-ms-win-crt-private-l1-1-0.dll b/installer/x64/ucrt/api-ms-win-crt-private-l1-1-0.dll new file mode 100644 index 00000000..240bf464 Binary files /dev/null and b/installer/x64/ucrt/api-ms-win-crt-private-l1-1-0.dll differ diff --git a/installer/x64/ucrt/api-ms-win-crt-process-l1-1-0.dll b/installer/x64/ucrt/api-ms-win-crt-process-l1-1-0.dll new file mode 100644 index 00000000..2b517e4b Binary files /dev/null and b/installer/x64/ucrt/api-ms-win-crt-process-l1-1-0.dll differ diff --git a/installer/x64/ucrt/api-ms-win-crt-runtime-l1-1-0.dll b/installer/x64/ucrt/api-ms-win-crt-runtime-l1-1-0.dll new file mode 100644 index 00000000..0b1da812 Binary files /dev/null and b/installer/x64/ucrt/api-ms-win-crt-runtime-l1-1-0.dll differ diff --git a/installer/x64/ucrt/api-ms-win-crt-stdio-l1-1-0.dll b/installer/x64/ucrt/api-ms-win-crt-stdio-l1-1-0.dll new file mode 100644 index 00000000..74e6f6c3 Binary files /dev/null and b/installer/x64/ucrt/api-ms-win-crt-stdio-l1-1-0.dll differ diff --git a/installer/x64/ucrt/api-ms-win-crt-string-l1-1-0.dll b/installer/x64/ucrt/api-ms-win-crt-string-l1-1-0.dll new file mode 100644 index 00000000..c366ed38 Binary files /dev/null and b/installer/x64/ucrt/api-ms-win-crt-string-l1-1-0.dll differ diff --git a/installer/x64/ucrt/api-ms-win-crt-time-l1-1-0.dll b/installer/x64/ucrt/api-ms-win-crt-time-l1-1-0.dll new file mode 100644 index 00000000..72c5a14b Binary files /dev/null and b/installer/x64/ucrt/api-ms-win-crt-time-l1-1-0.dll differ diff --git a/installer/x64/ucrt/api-ms-win-crt-utility-l1-1-0.dll b/installer/x64/ucrt/api-ms-win-crt-utility-l1-1-0.dll new file mode 100644 index 00000000..860f8789 Binary files /dev/null and b/installer/x64/ucrt/api-ms-win-crt-utility-l1-1-0.dll differ diff --git a/installer/x64/ucrt/ucrtbase.dll b/installer/x64/ucrt/ucrtbase.dll new file mode 100644 index 00000000..b6625752 Binary files /dev/null and b/installer/x64/ucrt/ucrtbase.dll differ diff --git a/installer/x64/vccorlib120.dll b/installer/x64/vccorlib120.dll deleted file mode 100644 index 0d21b029..00000000 Binary files a/installer/x64/vccorlib120.dll and /dev/null differ diff --git a/installer/x86/msvcp120.dll b/installer/x86/msvcp120.dll deleted file mode 100644 index a237d2d7..00000000 Binary files a/installer/x86/msvcp120.dll and /dev/null differ diff --git a/installer/x86/msvcr120.dll b/installer/x86/msvcr120.dll deleted file mode 100644 index 8c36149a..00000000 Binary files a/installer/x86/msvcr120.dll and /dev/null differ diff --git a/installer/x86/ucrt/API-MS-Win-core-xstate-l2-1-0.dll b/installer/x86/ucrt/API-MS-Win-core-xstate-l2-1-0.dll new file mode 100644 index 00000000..8eddeaba Binary files /dev/null and b/installer/x86/ucrt/API-MS-Win-core-xstate-l2-1-0.dll differ diff --git a/installer/x86/ucrt/api-ms-win-core-console-l1-1-0.dll b/installer/x86/ucrt/api-ms-win-core-console-l1-1-0.dll new file mode 100644 index 00000000..ea8c0c68 Binary files /dev/null and b/installer/x86/ucrt/api-ms-win-core-console-l1-1-0.dll differ diff --git a/installer/x86/ucrt/api-ms-win-core-console-l1-2-0.dll b/installer/x86/ucrt/api-ms-win-core-console-l1-2-0.dll new file mode 100644 index 00000000..4bdf6c38 Binary files /dev/null and b/installer/x86/ucrt/api-ms-win-core-console-l1-2-0.dll differ diff --git a/installer/x86/ucrt/api-ms-win-core-datetime-l1-1-0.dll b/installer/x86/ucrt/api-ms-win-core-datetime-l1-1-0.dll new file mode 100644 index 00000000..7af5ec2d Binary files /dev/null and b/installer/x86/ucrt/api-ms-win-core-datetime-l1-1-0.dll differ diff --git a/installer/x86/ucrt/api-ms-win-core-debug-l1-1-0.dll b/installer/x86/ucrt/api-ms-win-core-debug-l1-1-0.dll new file mode 100644 index 00000000..f7061625 Binary files /dev/null and b/installer/x86/ucrt/api-ms-win-core-debug-l1-1-0.dll differ diff --git a/installer/x86/ucrt/api-ms-win-core-errorhandling-l1-1-0.dll b/installer/x86/ucrt/api-ms-win-core-errorhandling-l1-1-0.dll new file mode 100644 index 00000000..c342eb81 Binary files /dev/null and b/installer/x86/ucrt/api-ms-win-core-errorhandling-l1-1-0.dll differ diff --git a/installer/x86/ucrt/api-ms-win-core-file-l1-1-0.dll b/installer/x86/ucrt/api-ms-win-core-file-l1-1-0.dll new file mode 100644 index 00000000..ee66a3ef Binary files /dev/null and b/installer/x86/ucrt/api-ms-win-core-file-l1-1-0.dll differ diff --git a/installer/x86/ucrt/api-ms-win-core-file-l1-2-0.dll b/installer/x86/ucrt/api-ms-win-core-file-l1-2-0.dll new file mode 100644 index 00000000..d7509e11 Binary files /dev/null and b/installer/x86/ucrt/api-ms-win-core-file-l1-2-0.dll differ diff --git a/installer/x86/ucrt/api-ms-win-core-file-l2-1-0.dll b/installer/x86/ucrt/api-ms-win-core-file-l2-1-0.dll new file mode 100644 index 00000000..b951952b Binary files /dev/null and b/installer/x86/ucrt/api-ms-win-core-file-l2-1-0.dll differ diff --git a/installer/x86/ucrt/api-ms-win-core-handle-l1-1-0.dll b/installer/x86/ucrt/api-ms-win-core-handle-l1-1-0.dll new file mode 100644 index 00000000..0ce2b84b Binary files /dev/null and b/installer/x86/ucrt/api-ms-win-core-handle-l1-1-0.dll differ diff --git a/installer/x86/ucrt/api-ms-win-core-heap-l1-1-0.dll b/installer/x86/ucrt/api-ms-win-core-heap-l1-1-0.dll new file mode 100644 index 00000000..240a44ee Binary files /dev/null and b/installer/x86/ucrt/api-ms-win-core-heap-l1-1-0.dll differ diff --git a/installer/x86/ucrt/api-ms-win-core-interlocked-l1-1-0.dll b/installer/x86/ucrt/api-ms-win-core-interlocked-l1-1-0.dll new file mode 100644 index 00000000..da396ed0 Binary files /dev/null and b/installer/x86/ucrt/api-ms-win-core-interlocked-l1-1-0.dll differ diff --git a/installer/x86/ucrt/api-ms-win-core-libraryloader-l1-1-0.dll b/installer/x86/ucrt/api-ms-win-core-libraryloader-l1-1-0.dll new file mode 100644 index 00000000..d023bed2 Binary files /dev/null and b/installer/x86/ucrt/api-ms-win-core-libraryloader-l1-1-0.dll differ diff --git a/installer/x86/ucrt/api-ms-win-core-localization-l1-2-0.dll b/installer/x86/ucrt/api-ms-win-core-localization-l1-2-0.dll new file mode 100644 index 00000000..8bc1c3f6 Binary files /dev/null and b/installer/x86/ucrt/api-ms-win-core-localization-l1-2-0.dll differ diff --git a/installer/x86/ucrt/api-ms-win-core-memory-l1-1-0.dll b/installer/x86/ucrt/api-ms-win-core-memory-l1-1-0.dll new file mode 100644 index 00000000..b03ebc56 Binary files /dev/null and b/installer/x86/ucrt/api-ms-win-core-memory-l1-1-0.dll differ diff --git a/installer/x86/ucrt/api-ms-win-core-namedpipe-l1-1-0.dll b/installer/x86/ucrt/api-ms-win-core-namedpipe-l1-1-0.dll new file mode 100644 index 00000000..8267a43f Binary files /dev/null and b/installer/x86/ucrt/api-ms-win-core-namedpipe-l1-1-0.dll differ diff --git a/installer/x86/ucrt/api-ms-win-core-processenvironment-l1-1-0.dll b/installer/x86/ucrt/api-ms-win-core-processenvironment-l1-1-0.dll new file mode 100644 index 00000000..9eb5da66 Binary files /dev/null and b/installer/x86/ucrt/api-ms-win-core-processenvironment-l1-1-0.dll differ diff --git a/installer/x86/ucrt/api-ms-win-core-processthreads-l1-1-0.dll b/installer/x86/ucrt/api-ms-win-core-processthreads-l1-1-0.dll new file mode 100644 index 00000000..999f4973 Binary files /dev/null and b/installer/x86/ucrt/api-ms-win-core-processthreads-l1-1-0.dll differ diff --git a/installer/x86/ucrt/api-ms-win-core-processthreads-l1-1-1.dll b/installer/x86/ucrt/api-ms-win-core-processthreads-l1-1-1.dll new file mode 100644 index 00000000..da9d3fb6 Binary files /dev/null and b/installer/x86/ucrt/api-ms-win-core-processthreads-l1-1-1.dll differ diff --git a/installer/x86/ucrt/api-ms-win-core-profile-l1-1-0.dll b/installer/x86/ucrt/api-ms-win-core-profile-l1-1-0.dll new file mode 100644 index 00000000..729dd4b4 Binary files /dev/null and b/installer/x86/ucrt/api-ms-win-core-profile-l1-1-0.dll differ diff --git a/installer/x86/ucrt/api-ms-win-core-rtlsupport-l1-1-0.dll b/installer/x86/ucrt/api-ms-win-core-rtlsupport-l1-1-0.dll new file mode 100644 index 00000000..e04a4396 Binary files /dev/null and b/installer/x86/ucrt/api-ms-win-core-rtlsupport-l1-1-0.dll differ diff --git a/installer/x86/ucrt/api-ms-win-core-string-l1-1-0.dll b/installer/x86/ucrt/api-ms-win-core-string-l1-1-0.dll new file mode 100644 index 00000000..9bd2073c Binary files /dev/null and b/installer/x86/ucrt/api-ms-win-core-string-l1-1-0.dll differ diff --git a/installer/x86/ucrt/api-ms-win-core-synch-l1-1-0.dll b/installer/x86/ucrt/api-ms-win-core-synch-l1-1-0.dll new file mode 100644 index 00000000..e50e8bf9 Binary files /dev/null and b/installer/x86/ucrt/api-ms-win-core-synch-l1-1-0.dll differ diff --git a/installer/x86/ucrt/api-ms-win-core-synch-l1-2-0.dll b/installer/x86/ucrt/api-ms-win-core-synch-l1-2-0.dll new file mode 100644 index 00000000..1503e1b5 Binary files /dev/null and b/installer/x86/ucrt/api-ms-win-core-synch-l1-2-0.dll differ diff --git a/installer/x86/ucrt/api-ms-win-core-sysinfo-l1-1-0.dll b/installer/x86/ucrt/api-ms-win-core-sysinfo-l1-1-0.dll new file mode 100644 index 00000000..2b7ce740 Binary files /dev/null and b/installer/x86/ucrt/api-ms-win-core-sysinfo-l1-1-0.dll differ diff --git a/installer/x86/ucrt/api-ms-win-core-timezone-l1-1-0.dll b/installer/x86/ucrt/api-ms-win-core-timezone-l1-1-0.dll new file mode 100644 index 00000000..14a880be Binary files /dev/null and b/installer/x86/ucrt/api-ms-win-core-timezone-l1-1-0.dll differ diff --git a/installer/x86/ucrt/api-ms-win-core-util-l1-1-0.dll b/installer/x86/ucrt/api-ms-win-core-util-l1-1-0.dll new file mode 100644 index 00000000..06db18b5 Binary files /dev/null and b/installer/x86/ucrt/api-ms-win-core-util-l1-1-0.dll differ diff --git a/installer/x86/ucrt/api-ms-win-crt-conio-l1-1-0.dll b/installer/x86/ucrt/api-ms-win-crt-conio-l1-1-0.dll new file mode 100644 index 00000000..824717ff Binary files /dev/null and b/installer/x86/ucrt/api-ms-win-crt-conio-l1-1-0.dll differ diff --git a/installer/x86/ucrt/api-ms-win-crt-convert-l1-1-0.dll b/installer/x86/ucrt/api-ms-win-crt-convert-l1-1-0.dll new file mode 100644 index 00000000..7892f469 Binary files /dev/null and b/installer/x86/ucrt/api-ms-win-crt-convert-l1-1-0.dll differ diff --git a/installer/x86/ucrt/api-ms-win-crt-environment-l1-1-0.dll b/installer/x86/ucrt/api-ms-win-crt-environment-l1-1-0.dll new file mode 100644 index 00000000..a612ac82 Binary files /dev/null and b/installer/x86/ucrt/api-ms-win-crt-environment-l1-1-0.dll differ diff --git a/installer/x86/ucrt/api-ms-win-crt-filesystem-l1-1-0.dll b/installer/x86/ucrt/api-ms-win-crt-filesystem-l1-1-0.dll new file mode 100644 index 00000000..1aee00a1 Binary files /dev/null and b/installer/x86/ucrt/api-ms-win-crt-filesystem-l1-1-0.dll differ diff --git a/installer/x86/ucrt/api-ms-win-crt-heap-l1-1-0.dll b/installer/x86/ucrt/api-ms-win-crt-heap-l1-1-0.dll new file mode 100644 index 00000000..07d12ce8 Binary files /dev/null and b/installer/x86/ucrt/api-ms-win-crt-heap-l1-1-0.dll differ diff --git a/installer/x86/ucrt/api-ms-win-crt-locale-l1-1-0.dll b/installer/x86/ucrt/api-ms-win-crt-locale-l1-1-0.dll new file mode 100644 index 00000000..49a00bca Binary files /dev/null and b/installer/x86/ucrt/api-ms-win-crt-locale-l1-1-0.dll differ diff --git a/installer/x86/ucrt/api-ms-win-crt-math-l1-1-0.dll b/installer/x86/ucrt/api-ms-win-crt-math-l1-1-0.dll new file mode 100644 index 00000000..81211e7d Binary files /dev/null and b/installer/x86/ucrt/api-ms-win-crt-math-l1-1-0.dll differ diff --git a/installer/x86/ucrt/api-ms-win-crt-multibyte-l1-1-0.dll b/installer/x86/ucrt/api-ms-win-crt-multibyte-l1-1-0.dll new file mode 100644 index 00000000..99e2ee91 Binary files /dev/null and b/installer/x86/ucrt/api-ms-win-crt-multibyte-l1-1-0.dll differ diff --git a/installer/x86/ucrt/api-ms-win-crt-private-l1-1-0.dll b/installer/x86/ucrt/api-ms-win-crt-private-l1-1-0.dll new file mode 100644 index 00000000..9c39d41c Binary files /dev/null and b/installer/x86/ucrt/api-ms-win-crt-private-l1-1-0.dll differ diff --git a/installer/x86/ucrt/api-ms-win-crt-process-l1-1-0.dll b/installer/x86/ucrt/api-ms-win-crt-process-l1-1-0.dll new file mode 100644 index 00000000..a37796a5 Binary files /dev/null and b/installer/x86/ucrt/api-ms-win-crt-process-l1-1-0.dll differ diff --git a/installer/x86/ucrt/api-ms-win-crt-runtime-l1-1-0.dll b/installer/x86/ucrt/api-ms-win-crt-runtime-l1-1-0.dll new file mode 100644 index 00000000..8868a16d Binary files /dev/null and b/installer/x86/ucrt/api-ms-win-crt-runtime-l1-1-0.dll differ diff --git a/installer/x86/ucrt/api-ms-win-crt-stdio-l1-1-0.dll b/installer/x86/ucrt/api-ms-win-crt-stdio-l1-1-0.dll new file mode 100644 index 00000000..b87e008e Binary files /dev/null and b/installer/x86/ucrt/api-ms-win-crt-stdio-l1-1-0.dll differ diff --git a/installer/x86/ucrt/api-ms-win-crt-string-l1-1-0.dll b/installer/x86/ucrt/api-ms-win-crt-string-l1-1-0.dll new file mode 100644 index 00000000..d4f61824 Binary files /dev/null and b/installer/x86/ucrt/api-ms-win-crt-string-l1-1-0.dll differ diff --git a/installer/x86/ucrt/api-ms-win-crt-time-l1-1-0.dll b/installer/x86/ucrt/api-ms-win-crt-time-l1-1-0.dll new file mode 100644 index 00000000..3146ec78 Binary files /dev/null and b/installer/x86/ucrt/api-ms-win-crt-time-l1-1-0.dll differ diff --git a/installer/x86/ucrt/api-ms-win-crt-utility-l1-1-0.dll b/installer/x86/ucrt/api-ms-win-crt-utility-l1-1-0.dll new file mode 100644 index 00000000..d5ab6280 Binary files /dev/null and b/installer/x86/ucrt/api-ms-win-crt-utility-l1-1-0.dll differ diff --git a/installer/x86/ucrt/ucrtbase.dll b/installer/x86/ucrt/ucrtbase.dll new file mode 100644 index 00000000..9c779a88 Binary files /dev/null and b/installer/x86/ucrt/ucrtbase.dll differ diff --git a/installer/x86/vccorlib120.dll b/installer/x86/vccorlib120.dll deleted file mode 100644 index 252821d0..00000000 Binary files a/installer/x86/vccorlib120.dll and /dev/null differ diff --git a/server/version_check.php b/server/version_check.php index e011755f..0d6d56b7 100644 --- a/server/version_check.php +++ b/server/version_check.php @@ -47,7 +47,7 @@ */ set_error_handler('error_handler'); -date_default_timezone_set('UCT'); +date_default_timezone_set('UTC'); header('Content-Type: application/json'); function error_handler($severity, $message, $filename, $lineno) @@ -65,7 +65,7 @@ function get_with_wildcard($src, $value, $default = null) } $versions = [ - '1.1.25' => [ + '1.1.26' => [ 'base_url' => 'https://github.com/canton7/SyncTrayzor/releases/download', 'installed' => [ 'direct_download_url' => [ @@ -82,7 +82,7 @@ function get_with_wildcard($src, $value, $default = null) 'sha1sum_download_url' => "{base_url}/v{version}/sha1sum.txt.asc", 'sha512sum_download_url' => "{base_url}/v{version}/sha512sum.txt.asc", 'release_page_url' => 'https://github.com/canton7/SyncTrayzor/releases/tag/v{version}', - 'release_notes' => "- Add touch support\n- Minor UI updates (#538, #540, #541, #543)", + 'release_notes' => "- Add touch support\n- Minor UI updates (#538, #540, #541, #543)\n- Uninstaller tries to remove autostart registry keys (#586)", ], '1.1.21' => [ 'base_url' => 'https://synctrayzor.antonymale.co.uk/download', @@ -106,7 +106,7 @@ function get_with_wildcard($src, $value, $default = null) ]; $upgrades = [ - // No point in upgrading from 1.1.23 for something so minor + '1.1.25' => ['to' => 'latest', 'formatter' => '5', 'overrides' => ['release_notes' => "- Fix the problems in v1.1.25 (#594, #595, #596, #597)\n- Uninstaller tries to remove autostart registry keys (#586)"]], '1.1.24' => ['to' => 'latest', 'formatter' => '5'], '1.1.23' => ['to' => 'latest', 'formatter' => '5'], '1.1.22' => ['to' => 'latest', 'formatter' => '5'], diff --git a/src/SyncTrayzor/App.config b/src/SyncTrayzor/App.config index b57b684b..f136ce75 100644 --- a/src/SyncTrayzor/App.config +++ b/src/SyncTrayzor/App.config @@ -87,37 +87,4 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/SyncTrayzor/Bootstrapper.cs b/src/SyncTrayzor/Bootstrapper.cs index a69b7af1..2ef8eab3 100644 --- a/src/SyncTrayzor/Bootstrapper.cs +++ b/src/SyncTrayzor/Bootstrapper.cs @@ -151,9 +151,8 @@ protected override void Configure() } // Has to be done before the VMs are fetched from the container - var languageArg = this.Args.FirstOrDefault(x => x.StartsWith("-culture=")); - if (languageArg != null) - Thread.CurrentThread.CurrentUICulture = new CultureInfo(languageArg.Substring("-culture=".Length)); + if (this.options.Culture != null) + Thread.CurrentThread.CurrentUICulture = new CultureInfo(this.options.Culture); else if (!configuration.UseComputerCulture) Thread.CurrentThread.CurrentUICulture = new CultureInfo("en-US"); @@ -249,6 +248,17 @@ protected override void OnUnhandledException(DispatcherUnhandledExceptionEventAr } } + if (this.Container == null) + { + // This happened very early on... Not much we can do. + MessageBox.Show( + $"An unexpected exception occurred during startup:\n\n{e.Exception.ToString()}", + "An unexpected exception occurred", + MessageBoxButton.OK, + MessageBoxImage.Error); + Environment.Exit(1); + } + // It's nicer if we try stopping the syncthing process, but if we can't, carry on try { diff --git a/src/SyncTrayzor/Localization/CustomPluralLocalizationFormatter.cs b/src/SyncTrayzor/Localization/CustomPluralLocalizationFormatter.cs index 4090d009..dad3bc7d 100644 --- a/src/SyncTrayzor/Localization/CustomPluralLocalizationFormatter.cs +++ b/src/SyncTrayzor/Localization/CustomPluralLocalizationFormatter.cs @@ -122,10 +122,15 @@ public bool TryEvaluateFormat(IFormattingInfo formattingInfo) var pluralCount = pluralWords.Count; var pluralIndex = pluralRule(value, pluralCount); - if (pluralIndex < 0 || pluralWords.Count <= pluralIndex) + if (pluralIndex < 0) + { + throw new FormattingException(format, "Invalid pluralIndex <0", pluralIndex); + } + else if (pluralWords.Count <= pluralIndex) { // The plural rule should always return a value in-range! - throw new FormattingException(format, "Invalid number of plural parameters", pluralWords.Last().endIndex); + // Pick the last plural in this case: we don't want to crash because of a bad translation + pluralIndex = pluralWords.Count - 1; } // Output the selected word (allowing for nested formats): diff --git a/src/SyncTrayzor/NotifyIcon/TaskbarIconResources.xaml b/src/SyncTrayzor/NotifyIcon/TaskbarIconResources.xaml index 7cd32a6a..53f7d31c 100644 --- a/src/SyncTrayzor/NotifyIcon/TaskbarIconResources.xaml +++ b/src/SyncTrayzor/NotifyIcon/TaskbarIconResources.xaml @@ -16,7 +16,7 @@ diff --git a/src/SyncTrayzor/Pages/Settings/SettingsView.xaml b/src/SyncTrayzor/Pages/Settings/SettingsView.xaml index 9dd2c4f0..967af4fd 100644 --- a/src/SyncTrayzor/Pages/Settings/SettingsView.xaml +++ b/src/SyncTrayzor/Pages/Settings/SettingsView.xaml @@ -52,7 +52,6 @@ - diff --git a/src/SyncTrayzor/Pages/ViewerViewModel.cs b/src/SyncTrayzor/Pages/ViewerViewModel.cs index f6137c4a..3fc5d3b5 100644 --- a/src/SyncTrayzor/Pages/ViewerViewModel.cs +++ b/src/SyncTrayzor/Pages/ViewerViewModel.cs @@ -109,6 +109,7 @@ protected override void OnInitialActivate() // System proxy settings (which also specify a proxy for localhost) shouldn't affect us settings.CefCommandLineArgs.Add("no-proxy-server", "1"); settings.CefCommandLineArgs.Add("disable-cache", "1"); + settings.CefCommandLineArgs.Add("disable-extensions", "1"); if (configuration.DisableHardwareRendering) { @@ -128,6 +129,7 @@ protected override void OnInitialActivate() private void InitializeBrowser(ChromiumWebBrowser webBrowser) { + webBrowser.RequestHandler = new CustomRequestHandler(); webBrowser.ResourceRequestHandlerFactory = this; webBrowser.LifeSpanHandler = this; webBrowser.MenuHandler = this; @@ -405,6 +407,16 @@ public void Dispose() this.configurationProvider.ConfigurationChanged -= this.ConfigurationChanged; } + private class CustomRequestHandler : RequestHandler + { + protected override bool OnCertificateError(IWebBrowser chromiumWebBrowser, IBrowser browser, CefErrorCode errorCode, string requestUrl, ISslInfo sslInfo, IRequestCallback callback) + { + // We shouldn't hit this because IgnoreCertificateErrors is true, but we do + callback.Continue(true); + return true; + } + } + private class CustomResourceRequestHandler : ResourceRequestHandler { private readonly ViewerViewModel parent; diff --git a/src/SyncTrayzor/Services/CommandLineOptionsParser.cs b/src/SyncTrayzor/Services/CommandLineOptionsParser.cs index 69e0ca4f..8145ef86 100644 --- a/src/SyncTrayzor/Services/CommandLineOptionsParser.cs +++ b/src/SyncTrayzor/Services/CommandLineOptionsParser.cs @@ -12,6 +12,7 @@ public class CommandLineOptionsParser public bool StartMinimized { get; private set; } public bool StartSyncthing { get; private set; } public bool StopSyncthing { get; private set; } + public string Culture { get; private set; } public CommandLineOptionsParser(IWindowManager windowManager) { @@ -33,7 +34,8 @@ public bool Parse(string[] args) .Add("stop-syncthing", "\nIf another SyncTrayzor process is running, tell it to stop Syncthing. Otherwise, launch with Syncthing stopped regardless of configuration.", v => this.StopSyncthing = true) .Add("noautostart", null, v => this.StopSyncthing = true, hidden: true) .Add("minimized", "\nIf another SyncTrayzor process is running, this flag has no effect. Otherwise, start in the tray rather than in the foreground.", v => minimized = true) - .Add("show", "\nIf another SyncTrayzor process is running, tell it to show its main window. Otherwise, this flag has no effect.", v => show = true); + .Add("show", "\nIf another SyncTrayzor process is running, tell it to show its main window. Otherwise, this flag has no effect.", v => show = true) + .Add("culture=", "\nForce SyncTrayzor to use a particular language", v => this.Culture = v); var unknownArgs = options.Parse(args); diff --git a/src/SyncTrayzor/SyncTrayzor.csproj b/src/SyncTrayzor/SyncTrayzor.csproj index 39dd5087..eec478b7 100644 --- a/src/SyncTrayzor/SyncTrayzor.csproj +++ b/src/SyncTrayzor/SyncTrayzor.csproj @@ -597,7 +597,7 @@ 1.5.2 - 2.5.3 + 2.0.0 1.3.5 @@ -620,6 +620,9 @@ 5.0.0 + + 1.0.4 + 1.1.2