diff --git a/deps/VC_redist.x86.exe b/deps/VC_redist.x86.exe new file mode 100644 index 0000000..f483e24 Binary files /dev/null and b/deps/VC_redist.x86.exe differ diff --git a/deps/mysql-connector-odbc-5.1.10-win32.msi b/deps/mysql-connector-odbc-5.1.10-win32.msi deleted file mode 100644 index 26f93b5..0000000 Binary files a/deps/mysql-connector-odbc-5.1.10-win32.msi and /dev/null differ diff --git a/deps/psqlodbc.msi b/deps/psqlodbc.msi deleted file mode 100644 index 15dd849..0000000 Binary files a/deps/psqlodbc.msi and /dev/null differ diff --git a/odbc/mariadb-connector-odbc-3.1.10-win32.msi b/odbc/mariadb-connector-odbc-3.1.10-win32.msi new file mode 100644 index 0000000..f7a1175 Binary files /dev/null and b/odbc/mariadb-connector-odbc-3.1.10-win32.msi differ diff --git a/odbc/mysql-connector-odbc-8.0.22-win32.msi b/odbc/mysql-connector-odbc-8.0.22-win32.msi new file mode 100644 index 0000000..15b55f1 Binary files /dev/null and b/odbc/mysql-connector-odbc-8.0.22-win32.msi differ diff --git a/setup.iss b/setup.iss index 9ea0ce1..6ee1682 100644 --- a/setup.iss +++ b/setup.iss @@ -1,6 +1,6 @@ #define MyAppName "Verdnatura" -#define MyAppVersion "1.1" +#define MyAppVersion "1.2" #define MyAppPublisher "Verdnatura" #define MyAppURL "http://www.verdnatura.es/" @@ -40,30 +40,32 @@ Name: "{sd}\fotos"; \ Permissions: users-modify [Files] +Source: "deps\*"; \ + DestDir: {tmp}; Flags: deleteafterinstall; AfterInstall: InstallExe; +Source: "odbc\*"; \ + DestDir: {tmp}; Flags: deleteafterinstall; AfterInstall: InstallMsi; Source: "src\*"; \ DestDir: "{app}"; Flags: ignoreversion Source: "icons\*"; \ DestDir: "{app}\icons"; Flags: ignoreversion Source: "ocx\*"; \ DestDir: {sys}; Flags: onlyifdoesntexist regserver 32bit -Source: "deps\*"; \ - DestDir: {tmp}; Flags: deleteafterinstall; AfterInstall: InstallDep; Source: "fonts\Roboto - *"; \ - DestDir: "{fonts}"; FontInstall: "Roboto"; Flags: uninsneveruninstall + DestDir: "{fonts}"; FontInstall: "Roboto"; Flags: onlyifdoesntexist uninsneveruninstall Source: "fonts\Lucida Sans - *"; \ - DestDir: "{fonts}"; FontInstall: "Lucida Sans"; Flags: uninsneveruninstall + DestDir: "{fonts}"; FontInstall: "Lucida Sans"; Flags: onlyifdoesntexist uninsneveruninstall Source: "fonts\Code128B.ttf"; \ - DestDir: "{fonts}"; FontInstall: "Code128B"; Flags: uninsneveruninstall + DestDir: "{fonts}"; FontInstall: "Code128B"; Flags: onlyifdoesntexist uninsneveruninstall Source: "fonts\CCode39.ttf"; \ - DestDir: "{fonts}"; FontInstall: "CCode39"; Flags: uninsneveruninstall + DestDir: "{fonts}"; FontInstall: "CCode39"; Flags: onlyifdoesntexist uninsneveruninstall Source: "fonts\Free 3 of 9.ttf"; \ - DestDir: "{fonts}"; FontInstall: "Free 3 of 9"; Flags: uninsneveruninstall + DestDir: "{fonts}"; FontInstall: "Free 3 of 9"; Flags: onlyifdoesntexist uninsneveruninstall Source: "fonts\Free 3 of 9 Extended.ttf"; \ - DestDir: "{fonts}"; FontInstall: "Free 3 of 9 Extended"; Flags: uninsneveruninstall + DestDir: "{fonts}"; FontInstall: "Free 3 of 9 Extended"; Flags: onlyifdoesntexist uninsneveruninstall Source: "fonts\IDAutomationHC39M.ttf"; \ - DestDir: "{fonts}"; FontInstall: "IDAutomationHC39M"; Flags: uninsneveruninstall + DestDir: "{fonts}"; FontInstall: "IDAutomationHC39M"; Flags: onlyifdoesntexist uninsneveruninstall Source: "fonts\MRV Code39extMA.ttf"; \ - DestDir: "{fonts}"; FontInstall: "MRV Code39extMA"; Flags: uninsneveruninstall + DestDir: "{fonts}"; FontInstall: "MRV Code39extMA"; Flags: onlyifdoesntexist uninsneveruninstall [Tasks] Name: "desktopicon"; \ @@ -207,7 +209,31 @@ Name: "{commondesktop}\Library"; \ [Code] -procedure InstallDep; +procedure InstallExe; +var + StatusText: String; + ResultCode: Integer; + ExeFile: String; +begin + ExeFile := ExpandConstant(CurrentFilename); + StatusText := WizardForm.StatusLabel.Caption; + WizardForm.StatusLabel.Caption := CurrentFilename +'...'; + WizardForm.ProgressGauge.Style := npbstMarquee; + Log(WizardSelectedComponents(False)); + try + if not Exec(ExeFile, '/Q', '', SW_SHOW, ewWaitUntilTerminated, ResultCode) then + begin + MsgBox(CurrentFilename +' installation failed with code: ' + IntToStr(ResultCode) + '.', + mbError, MB_OK); + WizardForm.Close; + end; + finally + WizardForm.StatusLabel.Caption := StatusText; + WizardForm.ProgressGauge.Style := npbstNormal; + end; +end; + +procedure InstallMsi; var StatusText: String; ResultCode: Integer; diff --git a/src/cacert.pem b/src/cacert.pem index f7bd939..10af91d 100755 --- a/src/cacert.pem +++ b/src/cacert.pem @@ -1,4 +1,27 @@ -----BEGIN CERTIFICATE----- +MIIDvzCCAqegAwIBAgIUG3Pd897tVM9pYLpPJFsulfk1z9EwDQYJKoZIhvcNAQEL +BQAwaDELMAkGA1UEBhMCRVMxDjAMBgNVBAgMBVNwYWluMREwDwYDVQQHDAhWYWxl +bmNpYTEeMBwGA1UECgwVVmVyZG5hdHVyYSBMZXZhbnRlIFNMMRYwFAYDVQQDDA1W +ZXJkbmF0dXJhIENBMB4XDTIwMTEwNjEyNTE0NVoXDTQwMTEwMTEyNTE0NVowaDEL +MAkGA1UEBhMCRVMxDjAMBgNVBAgMBVNwYWluMREwDwYDVQQHDAhWYWxlbmNpYTEe +MBwGA1UECgwVVmVyZG5hdHVyYSBMZXZhbnRlIFNMMRYwFAYDVQQDDA1WZXJkbmF0 +dXJhIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArKqvodZFH2RN +fSJ5tzNlxdcrSKl3iLF7ImeU/WlXXnUKxdsXFTq+HbychOc6fYOzTccvUxcgBz14 +j1ikqF98NLqEHy1vR5tfUGWLuNIQQ+aEaycuZupeCVNxo9LZ5L2HOJvBZdrhFE92 +op9BRNiNV4yqS+nkIvUyo4YJljUYAyVG5ZQAd5bEC5DXwehBaNkCcpIipWkYuFGh +3UpHd85FCcmEXXBuyMQhb7FYiqcK9yRfky10jf6K6JyxYBvHCnna5/rDFqQZthWU +CgIfIS090EEKkIBqUNsuLdhFSZGFXXBgVwslmAynoDF4CUddFrpyAhQmg5DND96W +EHbW4K+3vQIDAQABo2EwXzAOBgNVHQ8BAf8EBAMCAYYwDwYDVR0TAQH/BAUwAwEB +/zAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwHQYDVR0OBBYEFD36Jl1/ +uks1Ai3Gzijjd00VkPQJMA0GCSqGSIb3DQEBCwUAA4IBAQCDovHrdChX5e6/wGrr +8g8Xs1j2Lph9tIVtbP+mm9tsIvd8GV2LZIxEiw9GKdSZcx0vivT8Y2dM2b8pjkUY +8a7/ByLhEhxSDKcMk0cHwfD4zdhKcQBVb7DIYmBXLaiKlGFG04407klCRomzU+5y +SEte8AsCGmz7MOkDQ2IjghF5iM+Cagktlya3u2uefXN4CF81VOJlm5nICrc1ltPM +RsqTl8uxrgNxvqlODxC5kMePMulcJF3ybmhZwNqjraV4HupuwphedpaUypUQTSxp +mcUbG0MFkFnVF812ZN8QvNdmnguJ8o5Fzb6PvtEDgnJpU9CPQaqqec5ILMjBETFz +U438 +-----END CERTIFICATE----- +-----BEGIN CERTIFICATE----- MIIEQzCCAyugAwIBAgIJAJimL+J4jUaQMA0GCSqGSIb3DQEBBQUAMIG2MQswCQYD VQQGEwJFUzEdMBsGA1UECAwUQ29tdW5pZGFkIFZhbGVuY2lhbmExETAPBgNVBAcM CFZhbGVuY2lhMR4wHAYDVQQKDBVWZXJkbmF0dXJhIExldmFudGUgU0wxFDASBgNV diff --git a/src/main.js b/src/main.js index 80669a5..e3c441d 100755 --- a/src/main.js +++ b/src/main.js @@ -90,21 +90,24 @@ var App = { // Creates the MySQL ODBC connection var driverPath = this.getEnv('ProgramFiles') - +'\\MySQL\\Connector ODBC 5.1\\myodbc5.dll'; + +'\\MySQL\\Connector ODBC 8.0\\myodbc8a.dll'; var params = { - 'Driver' : driverPath, - 'DESCRIPTION' : Conf.appName, - 'SERVER' : Conf.dbHost, - 'DATABASE' : Conf.dbName, - 'SSLCA' : this.certFile, - 'SSLVERIFY' : 1, - 'AUTO_RECONNECT' : 1 + Driver : driverPath, + DESCRIPTION : Conf.appName, + SERVER : Conf.dbHost, + DATABASE : Conf.dbName, + SSLCA : this.certFile, + SSLMODE : 'VERIFY_IDENTITY', + SSLCIPHER : 'AES256-SHA', + AUTO_RECONNECT : 1, + NO_PROMPT : 1, + ENABLE_CLEARTEXT_PLUGIN : 1 }; this.createOdbc( Conf.dsName, - 'Mysql ODBC 5.1 Driver', + 'MySQL ODBC 8.0 ANSI Driver', params ); @@ -260,13 +263,15 @@ var App = { try { mysqlConn.open(this.getOdbcString({ - 'Driver': '{MySQL ODBC 5.1 Driver}', - 'Server': Conf.dbHost, - 'Database': Conf.dbName, - 'Uid': this.$('user').value, - 'Pwd': this.$('password').value, - 'Sslverify': 1, - 'Sslca': this.certFile + Driver : '{MySQL ODBC 8.0 ANSI Driver}', + Server : Conf.dbHost, + Database : Conf.dbName, + Uid : this.$('user').value, + Pwd : this.$('password').value, + Sslca : this.certFile, + SslMode : 'VERIFY_IDENTITY', + SslCipher : 'AES256-SHA', + ENABLE_CLEARTEXT_PLUGIN : 1 })); } catch (err) { var dbErrors = mysqlConn && mysqlConn.errors;