diff --git a/accountdetails.cpp b/accountdetails.cpp
index a536dd8c7c4f9567a20b7314da9679f7af64ee0d..fed1d3a10283909b86f5b4549c1c237c061742ff 100644
--- a/accountdetails.cpp
+++ b/accountdetails.cpp
@@ -30,6 +30,8 @@
 #include "ciphermodel.h"
 #include "ringtonemodel.h"
 
+#include <ciso646>
+
 AccountDetails::AccountDetails(QWidget *parent) :
     QWidget(parent),
     ui(new Ui::AccountDetails),
@@ -155,7 +157,7 @@ AccountDetails::setAccount(Account* currentAccount) {
     if (not currentAccount_->tlsPrivateKey().isEmpty())
         ui->lrcfg_tlsPrivateKeyCertificate->setText(currentAccount_->tlsPrivateKey());
 
-#ifdef Q_OS_WIN
+#if defined(Q_OS_WIN) && !defined(_MSC_VER) 
     certMap_[ui->lrcfg_tlsCaListCertificate->objectName()] = &currentAccount_->setTlsCaListCertificate;
     certMap_[ui->lrcfg_tlsCertificate->objectName()] = &currentAccount_->setTlsCertificate;
     certMap_[ui->lrcfg_tlsPrivateKeyCertificate->objectName()] = &currentAccount_->setTlsPrivateKey;
diff --git a/bannedcontactswidget.cpp b/bannedcontactswidget.cpp
index 5899d844cc9d2fb4d028189a3e4dc1b93672c448..eeaaf24a966a8fbc3e9b9ff3b95d69918cebba50 100644
--- a/bannedcontactswidget.cpp
+++ b/bannedcontactswidget.cpp
@@ -28,6 +28,7 @@
 #include "account.h"
 #include "bannedcontactmodel.h"
 
+#include <ciso646>
 
 /* Widget */
 
diff --git a/callutilsdialog.h b/callutilsdialog.h
index 5da664326366f87bb0728aeb08b306547d633e9b..0ab44910d296b0a3aa10ac65cf99fda8557bfdc3 100644
--- a/callutilsdialog.h
+++ b/callutilsdialog.h
@@ -26,6 +26,8 @@
 
 #include "smartlistdelegate.h"
 
+#include <ciso646>
+
 class QPropertyAnimation;
 class QGraphicsOpacityEffect;
 
diff --git a/contactrequestitemdelegate.cpp b/contactrequestitemdelegate.cpp
index 7e387ee1f24342bce94bdb137cc70664e4e02f55..bca3d932ff861982a00f61a21823aeff356c7ba5 100644
--- a/contactrequestitemdelegate.cpp
+++ b/contactrequestitemdelegate.cpp
@@ -28,6 +28,8 @@
 #include <QPainter>
 #include <QApplication>
 
+#include <ciso646>
+
 ContactRequestItemDelegate::ContactRequestItemDelegate(QObject* parent) :
     QItemDelegate(parent)
 {}
diff --git a/contactrequestlistwidget.cpp b/contactrequestlistwidget.cpp
index 859978e6ededcbfb1aded1dae9ebf8ac94e4a9bb..1e74d391d874d89951c8d40d3ce0118c281e3b7f 100644
--- a/contactrequestlistwidget.cpp
+++ b/contactrequestlistwidget.cpp
@@ -30,6 +30,8 @@
 #include <QAbstractItemView>
 #include <QEvent>
 
+#include <ciso646>
+
 ContactRequestListWidget::ContactRequestListWidget(QWidget *parent) :
     QTreeView(parent)
 {
diff --git a/deleteaccountdialog.h b/deleteaccountdialog.h
index c247cc997443b4c0ebb12b63b3a4087328fdd7fa..d06163c9d7a2369928f36464cd46d8b71faf3750 100644
--- a/deleteaccountdialog.h
+++ b/deleteaccountdialog.h
@@ -35,7 +35,7 @@ public:
     ~DeleteAccountDialog();
 
 signals:
-    deleteAcceptClicked();
+    void deleteAcceptClicked();
 
 private slots:
     void on_deleteCancelBtn_clicked();
diff --git a/main.cpp b/main.cpp
index 2b3e9c22342c2e6cec883f10784874c1a7e55be9..019780c0a48d13042c5c6a5fafdaf39da8939698 100644
--- a/main.cpp
+++ b/main.cpp
@@ -33,11 +33,16 @@
 #include <QLibraryInfo>
 #include <QFontDatabase>
 
+#include <ciso646>
 
 #ifdef Q_OS_WIN
 #include <windows.h>
 #endif
 
+#ifdef _MSC_VER
+#include <gnutls/gnutls.h>
+#endif
+
 #ifdef URI_PROTOCOL
 #include "shmclient.h"
 #endif
@@ -159,6 +164,10 @@ main(int argc, char *argv[])
 
     QFontDatabase::addApplicationFont(":/images/FontAwesome.otf");
 
+#ifdef _MSC_VER
+    gnutls_global_init();
+#endif
+
     if (not MainWindow::instance().init()) {
         return 1;
     }
diff --git a/mainwindow.cpp b/mainwindow.cpp
index ccfc5b70a172fa76c5ccc25cf4b33e42cad01fc8..531d9c30db2787cc0f55f00838c7eaed8b429132 100644
--- a/mainwindow.cpp
+++ b/mainwindow.cpp
@@ -42,9 +42,9 @@ MainWindow::MainWindow(QWidget* parent) :
     ui(new Ui::MainWindow)
 {
     ui->setupUi(this);
-    connect(ui->callwidget, CallWidget::NavigationRequested,
+    connect(ui->callwidget, &CallWidget::NavigationRequested,
             [this](ScreenEnum scr){Utils::slidePage(ui->navStack, ui->navStack->widget(scr));});
-    connect(ui->configurationwidget, ConfigurationWidget::NavigationRequested,
+    connect(ui->configurationwidget, &ConfigurationWidget::NavigationRequested,
             [this](ScreenEnum scr){Utils::slidePage(ui->navStack, ui->navStack->widget(scr));});
 
     QIcon icon(":images/ring.png");
diff --git a/qualitydialog.cpp b/qualitydialog.cpp
index 9be1531a717d589f7608300e79976f2d9a3b99b8..3df231e976f5ad74353b049975eb3eeae09b7861 100644
--- a/qualitydialog.cpp
+++ b/qualitydialog.cpp
@@ -29,6 +29,8 @@
 #include "account.h"
 #include "codecmodel.h"
 
+#include <ciso646>
+
 QualityDialog::QualityDialog(QWidget *parent) :
     QDialog(parent),
     ui(new Ui::QualityDialog),
diff --git a/selectareadialog.cpp b/selectareadialog.cpp
index f3dd3225c882e8be233290237613236768a43d7c..c983bde4f618cedd48233d8d2bb034735ba77581 100644
--- a/selectareadialog.cpp
+++ b/selectareadialog.cpp
@@ -20,6 +20,7 @@
 
 #ifdef Q_OS_WIN
 #define WIN32_LEAN_AND_MEAN 1
+#define NOMINMAX
 #include <windows.h>
 #include <winuser.h>
 
diff --git a/smartlist.cpp b/smartlist.cpp
index cda019a7ad3262860e20317466c15acc877cf22b..21db00e2f101f64f53480855c4473c0d334e34e1 100644
--- a/smartlist.cpp
+++ b/smartlist.cpp
@@ -27,6 +27,8 @@
 #include "combar.h"
 #include "smartlist.h"
 
+#include <ciso646>
+
 SmartList::SmartList(QWidget *parent) :
     QTreeView(parent)
 {
diff --git a/smartlistdelegate.cpp b/smartlistdelegate.cpp
index 4c164e08dfe53cd63be8d35cc01e12ebd7ca5edc..97e9d9400094a55a76643f5b6e916f2226c5c702 100644
--- a/smartlistdelegate.cpp
+++ b/smartlistdelegate.cpp
@@ -32,9 +32,10 @@
 
 // Client
 #include "combar.h"
-
 #include "ringthemeutils.h"
 
+#include <ciso646>
+
 SmartListDelegate::SmartListDelegate(QObject* parent) :
     QItemDelegate(parent)
 {
diff --git a/utils.h b/utils.h
index f6f9686d06369eac8539d172df2490745811f695..cd21780d0b46b8b9202453155780ca678c61f158 100644
--- a/utils.h
+++ b/utils.h
@@ -23,6 +23,7 @@
 
 #ifdef Q_OS_WIN
 #include <windows.h>
+#include <ciso646>
 #else //LINUX
 #define LPCWSTR char*
 #endif
diff --git a/wizarddialog.cpp b/wizarddialog.cpp
index a004337124389de12b25bb82c3ea93194c2922ae..7fedb3753e1e788335cc401bec8b59699e2e04d7 100644
--- a/wizarddialog.cpp
+++ b/wizarddialog.cpp
@@ -77,8 +77,8 @@ WizardDialog::WizardDialog(WizardMode wizardMode, Account* toBeMigrated, QWidget
             this, SLOT(handle_registeredNameFound(Account*,NameDirectory::LookupStatus,const QString&,const QString&)));
 
     nameLookupTimer_.setSingleShot(true);
-    connect(&nameLookupTimer_, QTimer::timeout, this, WizardDialog::timeoutNameLookupTimer);
-    connect(ui->photoBooth, &PhotoboothWidget::photoTaken, this, WizardDialog::on_photoTaken);
+    connect(&nameLookupTimer_, &QTimer::timeout, this, &WizardDialog::timeoutNameLookupTimer);
+    connect(ui->photoBooth, &PhotoboothWidget::photoTaken, this, &WizardDialog::on_photoTaken);
     ui->avatarLabel->hide();
 }