]> granicus.if.org Git - python/commitdiff
Running the pre-install or post-install script did not work when
authorThomas Heller <theller@ctypes.org>
Wed, 1 Dec 2004 18:18:08 +0000 (18:18 +0000)
committerThomas Heller <theller@ctypes.org>
Wed, 1 Dec 2004 18:18:08 +0000 (18:18 +0000)
Python was installed with the 'only for me' option. The registry key
had a hardcoded '2.3' in it where the python version chosen for
installation should be used instead.

Will backport myself.

PC/bdist_wininst/install.c

index d268624e98d5e1cf08cdd5bbddd2570d67efec46..bd832943dfc025423b437cf3911e7837136ff38d 100644 (file)
@@ -611,12 +611,15 @@ PyMethodDef meth[] = {
 static HINSTANCE LoadPythonDll(char *fname)
 {
        char fullpath[_MAX_PATH];
+       char subkey_name[80];
        LONG size = sizeof(fullpath);
        HINSTANCE h = LoadLibrary(fname);
        if (h)
                return h;
-       if (ERROR_SUCCESS != RegQueryValue(HKEY_CURRENT_USER,
-                                          "SOFTWARE\\Python\\PythonCore\\2.3\\InstallPath",
+       wsprintf(subkey_name,
+                "SOFTWARE\\Python\\PythonCore\\%s.%s\\InstallPath",
+                py_major, py_minor);
+       if (ERROR_SUCCESS != RegQueryValue(HKEY_CURRENT_USER, subkey_name,
                                           fullpath, &size))
                return NULL;
        strcat(fullpath, "\\");
@@ -1793,7 +1796,7 @@ InstallFilesDlgProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
                        /* Strip the trailing backslash again */
                        python_dir[strlen(python_dir)-1] = '\0';
             
-            CheckRootKey(hwnd);
+                       CheckRootKey(hwnd);
            
                        if (!OpenLogfile(python_dir))
                                break;