From 0307c0abe3050d30d0c84b8c2011b7692d376d79 Mon Sep 17 00:00:00 2001 From: Jose Manuel Delicado Date: Sun, 18 Oct 2015 22:18:43 +0200 Subject: [PATCH] Fixed com cache error --- src/libloader/com.py | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/libloader/com.py b/src/libloader/com.py index 98ebe858..ecc0b9e0 100644 --- a/src/libloader/com.py +++ b/src/libloader/com.py @@ -2,15 +2,25 @@ from pywintypes import com_error import win32com import paths win32com.__gen_path__=paths.data_path("com_cache") +import sys +import os +sys.path.append(os.path.join(win32com.__gen_path__, ".")) from win32com.client import gencache +fixed=False def prepare_gencache(): gencache.is_readonly = False gencache.GetGeneratePath() - +def patched_getmodule(modname): + mod=__import__(modname) + return sys.modules[modname] def load_com(*names): + global fixed + if fixed==False: + gencache._GetModule=patched_getmodule + fixed=True result = None for name in names: try: