diff --git a/Lib/distutils/tests/test_msvc9compiler.py b/Lib/distutils/tests/test_msvc9compiler.py
index 7382798..7cf1a12 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, "lfitalic")
-        self.assertTrue(v in (0, 1))
+        path = r'Control Panel\Desktop'
+        v = Reg.get_value(path, 'dragfullwindows')
+        self.assertTrue(v in ('0', '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 2c1f5a7..0712236 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -46,6 +46,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 #7318: multiprocessing now uses a timeout when it fails to establish
