mirror of
https://github.com/python/cpython.git
synced 2025-08-02 08:02:56 +00:00
Don't look for modules in the registry any longer.
Mark writes in private email: "Modules listed in the registry was a dumb idea. This whole scheme can die. AFAIK, no one in the world uses it (including win32all since the last build)." (See also SF #643711)
This commit is contained in:
parent
cef3288247
commit
8af41ceece
1 changed files with 0 additions and 38 deletions
|
@ -59,39 +59,6 @@ class Module:
|
||||||
s = s + ")"
|
s = s + ")"
|
||||||
return s
|
return s
|
||||||
|
|
||||||
_warned = 0
|
|
||||||
|
|
||||||
def _try_registry(name):
|
|
||||||
# Emulate the Registered Module support on Windows.
|
|
||||||
try:
|
|
||||||
import _winreg
|
|
||||||
RegQueryValue = _winreg.QueryValue
|
|
||||||
HKLM = _winreg.HKEY_LOCAL_MACHINE
|
|
||||||
exception = _winreg.error
|
|
||||||
except ImportError:
|
|
||||||
try:
|
|
||||||
import win32api
|
|
||||||
RegQueryValue = win32api.RegQueryValue
|
|
||||||
HKLM = 0x80000002 # HKEY_LOCAL_MACHINE
|
|
||||||
exception = win32api.error
|
|
||||||
except ImportError:
|
|
||||||
global _warned
|
|
||||||
if not _warned:
|
|
||||||
_warned = 1
|
|
||||||
print "Warning: Neither _winreg nor win32api is available - modules"
|
|
||||||
print "listed in the registry will not be found"
|
|
||||||
return None
|
|
||||||
try:
|
|
||||||
pathname = RegQueryValue(HKLM, \
|
|
||||||
r"Software\Python\PythonCore\%s\Modules\%s" % (sys.winver, name))
|
|
||||||
fp = open(pathname, "rb")
|
|
||||||
except exception:
|
|
||||||
return None
|
|
||||||
else:
|
|
||||||
# XXX - To do - remove the hard code of C_EXTENSION.
|
|
||||||
stuff = "", "rb", imp.C_EXTENSION
|
|
||||||
return fp, pathname, stuff
|
|
||||||
|
|
||||||
class ModuleFinder:
|
class ModuleFinder:
|
||||||
|
|
||||||
def __init__(self, path=None, debug=0, excludes = [], replace_paths = []):
|
def __init__(self, path=None, debug=0, excludes = [], replace_paths = []):
|
||||||
|
@ -389,11 +356,6 @@ class ModuleFinder:
|
||||||
if name in sys.builtin_module_names:
|
if name in sys.builtin_module_names:
|
||||||
return (None, None, ("", "", imp.C_BUILTIN))
|
return (None, None, ("", "", imp.C_BUILTIN))
|
||||||
|
|
||||||
if sys.platform=="win32":
|
|
||||||
result = _try_registry(name)
|
|
||||||
if result:
|
|
||||||
return result
|
|
||||||
|
|
||||||
path = self.path
|
path = self.path
|
||||||
return imp.find_module(name, path)
|
return imp.find_module(name, path)
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue