From 04fe75f6cc02b22f5571eaf61ff525d15e7b0ccd Mon Sep 17 00:00:00 2001 From: hbeham Date: Mon, 22 Jul 2013 20:13:34 +0200 Subject: [PATCH] - VC++ 2010 Redist Package check (required by SQLite) - add Portuguese satellite assemblies to .zip --- ChanSort.Api/ChanSort.Api.csproj | 1 + ChanSort.Api/Utils/DependencyChecker.cs | 21 ++++++++++++++ ChanSort.Loader.Panasonic/Serializer.cs | 2 ++ ChanSort.Loader.Toshiba/DbSerializer.cs | 2 ++ ChanSort/MainForm.cs | 12 ++++---- makeDistribZip.cmd | 1 + readme.txt | 37 ++++++++++++------------- 7 files changed, 51 insertions(+), 25 deletions(-) create mode 100644 ChanSort.Api/Utils/DependencyChecker.cs diff --git a/ChanSort.Api/ChanSort.Api.csproj b/ChanSort.Api/ChanSort.Api.csproj index 7557e6c..05552f8 100644 --- a/ChanSort.Api/ChanSort.Api.csproj +++ b/ChanSort.Api/ChanSort.Api.csproj @@ -84,6 +84,7 @@ True Resources.resx + diff --git a/ChanSort.Api/Utils/DependencyChecker.cs b/ChanSort.Api/Utils/DependencyChecker.cs new file mode 100644 index 0000000..21dad11 --- /dev/null +++ b/ChanSort.Api/Utils/DependencyChecker.cs @@ -0,0 +1,21 @@ +using System; +using System.IO; + +namespace ChanSort.Api +{ + public static class DepencencyChecker + { + public static bool IsVc2010RedistPackageX86Installed() + { + object value = Microsoft.Win32.Registry.GetValue(@"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\10.0\VC\VCRedist\x86", + "Installed", null); + return value != null && Convert.ToInt32(value) == 1; + } + + public static void AssertVc2010RedistPackageX86Installed() + { + if (!IsVc2010RedistPackageX86Installed()) + throw new FileLoadException("Please download and install the Microsoft Visual C++ 2010 Redistributable Package (x86)"); + } + } +} diff --git a/ChanSort.Loader.Panasonic/Serializer.cs b/ChanSort.Loader.Panasonic/Serializer.cs index 7c95c73..6dc50d1 100644 --- a/ChanSort.Loader.Panasonic/Serializer.cs +++ b/ChanSort.Loader.Panasonic/Serializer.cs @@ -302,6 +302,8 @@ namespace ChanSort.Loader.Panasonic #region ctor() public Serializer(string inputFile) : base(inputFile) { + DepencencyChecker.AssertVc2010RedistPackageX86Installed(); + this.Features.ChannelNameEdit = true; this.DataRoot.SortedFavorites = true; diff --git a/ChanSort.Loader.Toshiba/DbSerializer.cs b/ChanSort.Loader.Toshiba/DbSerializer.cs index 41aaffb..e957828 100644 --- a/ChanSort.Loader.Toshiba/DbSerializer.cs +++ b/ChanSort.Loader.Toshiba/DbSerializer.cs @@ -27,6 +27,8 @@ namespace ChanSort.Loader.Toshiba #region ctor() public DbSerializer(string inputFile) : base(inputFile) { + DepencencyChecker.AssertVc2010RedistPackageX86Installed(); + this.Features.ChannelNameEdit = true; this.DataRoot.AddChannelList(this.atvChannels); diff --git a/ChanSort/MainForm.cs b/ChanSort/MainForm.cs index 707843d..634848a 100644 --- a/ChanSort/MainForm.cs +++ b/ChanSort/MainForm.cs @@ -25,7 +25,7 @@ namespace ChanSort.Ui { public partial class MainForm : XtraForm { - public const string AppVersion = "v2013-07-19.3"; + public const string AppVersion = "v2013-07-22"; private const int MaxMruEntries = 5; @@ -153,11 +153,11 @@ namespace ChanSort.Ui dlg.FilterIndex = numberOfFilters + 1; dlg.CheckFileExists = true; dlg.RestoreDirectory = true; - if (dlg.ShowDialog() == DialogResult.OK) - { - var plugin = dlg.FilterIndex <= this.plugins.Count ? this.plugins[dlg.FilterIndex - 1] : null; - this.LoadFiles(plugin, dlg.FileName); - } + if (dlg.ShowDialog() != DialogResult.OK) + return; + + var plugin = dlg.FilterIndex <= this.plugins.Count ? this.plugins[dlg.FilterIndex - 1] : null; + this.LoadFiles(plugin, dlg.FileName); } } #endregion diff --git a/makeDistribZip.cmd b/makeDistribZip.cmd index 8728e77..d96b006 100644 --- a/makeDistribZip.cmd +++ b/makeDistribZip.cmd @@ -13,6 +13,7 @@ copy DLL\* "%target%" del "%target%\*nunit*.dll" mkdir "%target%\de" 2>nul xcopy /siy debug\de "%target%\de" +xcopy /siy debug\pt "%target%\pt" copy readme.txt "%target%" for %%f in (Utils Data XtraEditors XtraBars XtraGrid XtraLayout) do call :copyDll %%f diff --git a/readme.txt b/readme.txt index 9d0d7ee..1a7b375 100644 --- a/readme.txt +++ b/readme.txt @@ -1,21 +1,9 @@ -Version v2013-07-19.3 ==================================================== +Version v2013-07-22 ====================================================== Changes: -- FIX: .NET Framework 4.0 exceptions about loading DLLs downloaded from - the web (since the whole .zip was downloaded from the web) -- FIX: Samsung "CablePrime" channel list was not updated/saved -- FIX: Deleted Samsung analog, DVB-T and DVB-C channels re-appeared in the - channel list after loading the file again. -- Supports Panasonic "svl.bin" channel lists for different TV CPUs - (auto-detecting big-endian or little-endian byte order). -- *.csv reference list is no longer created automatically. (You can always - use your TV data file as a reference list anyway) -- File / Save reference list... now opens a dialog which allows to save in - either ChanSort *.csv or SamToolBox *.chl format. - (The *.chl format only contains the currently selected list, so it can be - used to duplicate the order from e.g. the "Astra HD+" to the "Satellite" - list within the same *.scm file) -- Upgraded to .NET Framework 4.0 and DevExpress 13.1 libraries +- Display message box to install VC++ 2010 Redist Package (x86) when it is + missing (required by SQLite to load Panasonic and Toshiba lists) +- FIX: added missing files for Portuguese translation The complete change log can be found at the end of this document @@ -67,7 +55,7 @@ LG Instructions on how to access the hidden service-menu for transferring the channel list from/to USB can be found here: - https://sourceforge.net/p/chansort/wiki/Home/ + http://sourceforge.net/p/chansort/wiki/Home/ Panasonic ------- @@ -90,13 +78,19 @@ format there is a chance of unwanted side-effects or damage to your TV. System requirements ======================================================= -- USB-Stick to transfer the channel list between your TV and PC +- Microsoft .NET Framework 4.0 (included in Win8, can be installed manually + on Windows 7, Windows Vista, Windows XP SP3): + http://www.microsoft.com/en-us/download/details.aspx?id=17851 +- Microsoft Visual C++ 2010 Redistributable Package (x86) + Required to edit Panasonic and Toshiba channel lists (through SQLite) + http://www.microsoft.com/en-us/download/details.aspx?id=8328 +- USB-stick to transfer the channel list between your TV and PC + (for Panasonic an SD-Card is needed instead of a USB-stick) - For LG's LM-series you need a programmable remote control to access the service menu for transferring the list to/from USB. (e.g. Logitech Harmony 300, One-For-All URC3920,...) Details can be found on the ChanSort wiki and on http://openlgtv.org.ru/wiki/index.php/Access_hidden_service_menus_/_modes -- Microsoft .NET Framework 3.5 (included in WinXP SP3, Vista, Win7, Win8) License =============================================================== @@ -115,6 +109,11 @@ OTHER DEALINGS IN THE SOFTWARE. Change log ================================================================ +2013-07-22 +- Display message box to install VC++ 2010 Redist Package (x86) when it is + missing (required by SQLite to load Panasonic and Toshiba lists) +- FIX: added missing files for Portuguese translation + 2013-07-19.3 - FIX: .NET Framework 4.0 exceptions about loading DLLs downloaded from the web (since the whole .zip was downloaded from the web)