diff --git a/src/gui/mainwindow.cpp b/src/gui/mainwindow.cpp index 1275c6116..5840e2149 100644 --- a/src/gui/mainwindow.cpp +++ b/src/gui/mainwindow.cpp @@ -28,6 +28,11 @@ #include "mainwindow.h" +#if defined(Q_OS_WIN) +#include +#include // must follow after Windows.h +#endif + #include #include #include @@ -40,7 +45,6 @@ #include #include #include -#include #include #include @@ -2003,7 +2007,7 @@ void MainWindow::installPython() { setCursor(QCursor(Qt::WaitCursor)); // Download python - const QString installerURL = ((QSysInfo::windowsVersion() >= QSysInfo::WV_VISTA) + const QString installerURL = (::IsWindowsVistaOrGreater() ? "https://www.python.org/ftp/python/3.6.6/python-3.6.6.exe" : "https://www.python.org/ftp/python/3.4.4/python-3.4.4.msi"); Net::DownloadManager::instance()->download( @@ -2026,7 +2030,7 @@ void MainWindow::pythonDownloadFinished(const Net::DownloadResult &result) QProcess installer; qDebug("Launching Python installer in passive mode..."); - if (QSysInfo::windowsVersion() >= QSysInfo::WV_VISTA) { + if (::IsWindowsVistaOrGreater()) { QFile::rename(result.filePath, result.filePath + ".exe"); installer.start('"' + Utils::Fs::toNativePath(result.filePath) + ".exe\" /passive"); } @@ -2042,7 +2046,7 @@ void MainWindow::pythonDownloadFinished(const Net::DownloadResult &result) qDebug("Installer stderr: %s", installer.readAllStandardError().data()); qDebug("Setup should be complete!"); // Delete temp file - if (QSysInfo::windowsVersion() >= QSysInfo::WV_VISTA) + if (::IsWindowsVistaOrGreater()) Utils::Fs::forceRemove(result.filePath + ".exe"); else Utils::Fs::forceRemove(result.filePath + ".msi"); diff --git a/src/gui/programupdater.cpp b/src/gui/programupdater.cpp index 0611e1717..95c8e5ee2 100644 --- a/src/gui/programupdater.cpp +++ b/src/gui/programupdater.cpp @@ -28,13 +28,21 @@ #include "programupdater.h" +#if defined(Q_OS_WIN) +#include +#include // must follow after Windows.h +#endif + #include #include #include #include -#include #include +#if defined(Q_OS_WIN) +#include +#endif + #include "base/net/downloadmanager.h" namespace @@ -73,7 +81,7 @@ void ProgramUpdater::rssDownloadFinished(const Net::DownloadResult &result) #ifdef Q_OS_MAC const QString OS_TYPE {"Mac OS X"}; #elif defined(Q_OS_WIN) - const QString OS_TYPE {((QSysInfo::windowsVersion() >= QSysInfo::WV_WINDOWS7) + const QString OS_TYPE {(::IsWindows7OrGreater() && QSysInfo::currentCpuArchitecture().endsWith("64")) ? "Windows x64" : "Windows"}; #endif