diff --git a/src/plugins/projectexplorer/toolchain.cpp b/src/plugins/projectexplorer/toolchain.cpp
index 0095b6e5ba0e20458087e87a42c2cb36679ad85d..379a9d6a66eeb1059e8955ada4b722f719563e3a 100644
--- a/src/plugins/projectexplorer/toolchain.cpp
+++ b/src/plugins/projectexplorer/toolchain.cpp
@@ -41,6 +41,12 @@
 using namespace ProjectExplorer;
 using namespace ProjectExplorer::Internal;
 
+#ifdef Q_OS_WIN64
+static const char * MSVC_RegKey = "HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\Microsoft\\VisualStudio\\SxS\\VC7";
+#else
+static const char * MSVC_RegKey = "HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\SxS\\VS7";
+#endif
+
 bool ToolChain::equals(ToolChain *a, ToolChain *b)
 {
     if (a == b)
@@ -82,10 +88,9 @@ ToolChain *ToolChain::createWinCEToolChain(const QString &name, const QString &p
 
 QStringList ToolChain::availableMSVCVersions()
 {
-    QSettings registry("HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\SxS\\VS7",
-                       QSettings::NativeFormat);
+    QSettings registry(MSVC_RegKey, QSettings::NativeFormat);
     QStringList versions = registry.allKeys();
-//    qDebug() << "AVAILABLE MSVC VERSIONS:" << versions;
+    // qDebug() << "AVAILABLE MSVC VERSIONS:" << versions << "at" << MSVC_RegKey;
     return versions;
 }
 
@@ -231,8 +236,7 @@ MSVCToolChain::MSVCToolChain(const QString &name, bool amd64)
     : m_name(name), m_valuesSet(false), m_amd64(amd64)
 {
     if (m_name.isEmpty()) { // Could be because system qt doesn't set this
-        QSettings registry("HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\SxS\\VS7",
-                       QSettings::NativeFormat);
+        QSettings registry(MSVC_RegKey, QSettings::NativeFormat);
         QStringList keys = registry.allKeys();
         if (keys.count())
             m_name = keys.first();
@@ -279,8 +283,7 @@ void MSVCToolChain::addToEnvironment(ProjectExplorer::Environment &env)
 {
     if (!m_valuesSet || env != m_lastEnvironment) {
         m_lastEnvironment = env;
-        QSettings registry("HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\SxS\\VS7",
-                       QSettings::NativeFormat);
+        QSettings registry(MSVC_RegKey, QSettings::NativeFormat);
         if (m_name.isEmpty())
             return;
         QString path = registry.value(m_name).toString();
@@ -384,8 +387,7 @@ QList<HeaderPath> WinCEToolChain::systemHeaderPaths()
 void WinCEToolChain::addToEnvironment(ProjectExplorer::Environment &env)
 {
     MSVCToolChain::addToEnvironment(env);
-    QSettings registry("HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\SxS\\VS7",
-                   QSettings::NativeFormat);
+    QSettings registry(MSVC_RegKey, QSettings::NativeFormat);
     QString path = registry.value(m_name).toString();
 
     // Find MSVC path