diff --git a/Lib/distutils/tests/test_msvc9compiler.py b/Lib/distutils/tests/test_msvc9compiler.py
index 21242a8..69a393c 100644
--- a/Lib/distutils/tests/test_msvc9compiler.py
+++ b/Lib/distutils/tests/test_msvc9compiler.py
@@ -44,17 +44,17 @@
 
         # looking for values that should exist on all
         # windows registeries versions.
-        path = r'Software\Microsoft\Notepad'
-        v = Reg.get_value(path, u"lfitalic")
-        self.assertTrue(v in (0, 1))
+        path = r'Control Panel\Desktop'
+        v = Reg.get_value(path, u'dragfullwindows')
+        self.assertTrue(v in (u'0', u'1'))
 
         import _winreg
         HKCU = _winreg.HKEY_CURRENT_USER
         keys = Reg.read_keys(HKCU, 'xxxx')
         self.assertEquals(keys, None)
 
-        keys = Reg.read_keys(HKCU, r'Software\Microsoft')
-        self.assertTrue('Notepad' in keys)
+        keys = Reg.read_keys(HKCU, r'Control Panel')
+        self.assertTrue('Desktop' in keys)
 
 def test_suite():
     return unittest.makeSuite(msvc9compilerTestCase)
diff --git a/Misc/NEWS b/Misc/NEWS
index d366818..0e76ccb 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -431,6 +431,9 @@
 Library
 -------
 
+- Issue #7293: distutils.test_msvc9compiler is fixed to work on any fresh
+  Windows box. Help provided by David Bolen.
+
 - Issue #7328: pydoc no longer corrupts sys.path when run with the '-m' switch
 
 - Issue #2054: ftplib now provides an FTP_TLS class to do secure FTP using
