New submission from Marc-Andre Lemburg <m...@egenix.com>:

When installing Visual Studio 2008 SP1 on a Windows Vista x64 system, the 
installer registers the various registry keys under

Software\Wow6432Node\Microsoft\VisualStudio\9.0\

rather than

Software\Microsoft\VisualStudio\9.0\

This is due to some redirection MS is applying to registry names when running 
32-bit apps (such as the VS2008 installer) on 64-bit Windows:

http://support.microsoft.com/kb/896459

Since the tools in msvc9compiler.py rely on the registry to find the various 
dirs, batch files and tools, these operations fail.

A simple solution is to just update the globals at the top of the file to:

VS_BASE = r"Software\Wow6432Node\Microsoft\VisualStudio\%0.1f"
WINSDK_BASE = r"Software\Wow6432Node\Microsoft\Microsoft SDKs\Windows"
NET_BASE = r"Software\Wow6432Node\Microsoft\.NETFramework"

but that would of course have to be done with some extra checks to not break 
these settings on other Windows systems.

I'm not sure whether this is specific to Windows Vista or also occurs on 
Windows 7.

----------
assignee: tarek
components: Distutils
keywords: 64bit
messages: 106745
nosy: lemburg, tarek
priority: normal
severity: normal
status: open
title: msvc9compiler.py: find_vcvarsall() doesn't work with VS2008 on Windows 
x64
versions: Python 2.6, Python 2.7

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue8854>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to