|
8 | 8 | <PropertyRef Id="REGISTRYKEY" /> |
9 | 9 |
|
10 | 10 | <Property Id="PYTHON_EXE" Secure="yes"> |
11 | | - <ComponentSearch Id="PythonExe" Guid="$(var.PythonwExeComponentGuid)"> |
| 11 | + <ComponentSearch Id="PythonExe" Guid="$(var.PythonExeComponentGuid)"> |
| 12 | + <FileSearch Name="python.exe" /> |
| 13 | + </ComponentSearch> |
| 14 | + </Property> |
| 15 | + |
| 16 | + <Property Id="PYTHONW_EXE" Secure="yes"> |
| 17 | + <ComponentSearch Id="PythonwExe" Guid="$(var.PythonwExeComponentGuid)"> |
12 | 18 | <FileSearch Name="pythonw.exe" /> |
13 | 19 | </ComponentSearch> |
14 | 20 | </Property> |
15 | 21 |
|
16 | | - <Condition Message="!(loc.NoPython)">PYTHON_EXE</Condition> |
| 22 | + <Condition Message="!(loc.NoPython)">PYTHON_EXE and PYTHONW_EXE</Condition> |
17 | 23 |
|
18 | 24 | <Feature Id="DefaultFeature" AllowAdvertise="no" Title="!(loc.Title)" Description="!(loc.Description)"> |
19 | 25 | <ComponentGroupRef Id="tkinter_extension" /> |
20 | 26 | <ComponentGroupRef Id="tcltk_dlls" /> |
21 | 27 | <ComponentGroupRef Id="tcltk_lib" /> |
22 | | - <ComponentGroupRef Id="tkinter_lib" /> |
| 28 | + <ComponentGroupRef Id="tkinter_lib" Primary="yes" /> |
23 | 29 |
|
24 | 30 | <Component Id="idle_shortcut" Directory="MenuDir"> |
25 | 31 | <RegistryValue KeyPath="yes" Root="HKMU" Key="[REGISTRYKEY]\Idle" Type="string" Value="[#Lib_idlelib_idle.pyw]" /> |
|
29 | 35 | Directory="MenuDir" |
30 | 36 | Name="!(loc.ShortcutName)" |
31 | 37 | Description="!(loc.ShortcutDescription)" |
32 | | - Target="[PYTHON_EXE]" |
| 38 | + Target="[PYTHONW_EXE]" |
33 | 39 | Arguments='"[#Lib_idlelib_idle.pyw]"' |
34 | 40 | Icon="idle.exe"> |
35 | 41 | <Icon Id="idle.exe" SourceFile="!(bindpath.src)Lib\idlelib\Icons\idle.ico" /> |
36 | 42 | </Shortcut> |
| 43 | + <Shortcut Id="pydoc.py" |
| 44 | + Target="[PYTHON_EXE]" |
| 45 | + Arguments='-m pydoc -b' |
| 46 | + Name="!(loc.PyDocShortcutName)" |
| 47 | + Description="!(loc.PyDocShortcutDescription)" |
| 48 | + Icon="idle.exe" /> |
| 49 | + </Component> |
| 50 | + </Feature> |
| 51 | + <Feature Id="AssociateFiles" AllowAdvertise="no" Title="!(loc.Title)" Description="!(loc.Description)"> |
| 52 | + <ComponentGroupRef Id="tkinter_lib" /> |
| 53 | + |
| 54 | + <!-- We fix the guid of the Subcommands key so that it is correctly reference counted --> |
| 55 | + <Component Id="assoc_subcommands" Directory="InstallDirectory" Guid="{57D47B4C-96E6-40A0-A958-57083D74423F}"> |
| 56 | + <Condition>VersionNT > 600</Condition> |
| 57 | + <RegistryValue Root="HKCR" Key="$(var.TestPrefix)Python.File\Shell\editwithidle" Name="MUIVerb" Value="!(loc.EditMenu)" Type="string" KeyPath="yes" /> |
| 58 | + <RegistryValue Root="HKCR" Key="$(var.TestPrefix)Python.File\Shell\editwithidle" Name="Subcommands" Value="" Type="string" KeyPath="no" /> |
| 59 | + </Component> |
| 60 | + <Component Id="assoc_subcommands_nocon" Directory="InstallDirectory" Guid="{07061D85-9151-4FC4-BB78-13628020D026}"> |
| 61 | + <Condition>VersionNT > 600</Condition> |
| 62 | + <RegistryValue Root="HKCR" Key="$(var.TestPrefix)Python.NoConFile\Shell\editwithidle" Name="MUIVerb" Value="!(loc.EditMenu)" Type="string" KeyPath="yes" /> |
| 63 | + <RegistryValue Root="HKCR" Key="$(var.TestPrefix)Python.NoConFile\Shell\editwithidle" Name="Subcommands" Value="" Type="string" KeyPath="no" /> |
| 64 | + </Component> |
| 65 | + |
| 66 | + <Component Id="assoc_editwithidle" Directory="InstallDirectory"> |
| 67 | + <Condition>VersionNT > 600</Condition> |
| 68 | + <RegistryKey Root="HKCR" Key="$(var.TestPrefix)Python.File\Shell\editwithidle\shell\edit$(var.MajorVersionNumber)$(var.MinorVersionNumber)$(var.Suffix32)"> |
| 69 | + <RegistryValue Name="MUIVerb" Value="!(loc.EditSubMenu)" Type="string" KeyPath="yes" /> |
| 70 | + <RegistryValue Key="command" Value='"[PYTHONW_EXE]" -m idlelib "%L" %*' Type="string" /> |
| 71 | + </RegistryKey> |
| 72 | + </Component> |
| 73 | + <Component Id="assoc_editwithidle_nocon" Directory="InstallDirectory"> |
| 74 | + <Condition>VersionNT > 600</Condition> |
| 75 | + <RegistryKey Root="HKCR" Key="$(var.TestPrefix)Python.NoConFile\Shell\editwithidle\shell\edit$(var.MajorVersionNumber)$(var.MinorVersionNumber)$(var.Suffix32)"> |
| 76 | + <RegistryValue Name="MUIVerb" Value="!(loc.EditSubMenu)" Type="string" KeyPath="yes" /> |
| 77 | + <RegistryValue Key="command" Value='"[PYTHONW_EXE]" -m idlelib "%L" %*' Type="string" /> |
| 78 | + </RegistryKey> |
| 79 | + </Component> |
| 80 | + |
| 81 | + <Component Id="assoc_editwithidle_vista" Directory="InstallDirectory"> |
| 82 | + <Condition>VersionNT = 600</Condition> |
| 83 | + <RegistryKey Root="HKCR" Key="$(var.TestPrefix)Python.File\Shell\editwithidle$(var.MajorVersionNumber)$(var.MinorVersionNumber)$(var.Suffix32)"> |
| 84 | + <RegistryValue Value="!(loc.EditSubMenu)" Type="string" KeyPath="yes" /> |
| 85 | + <RegistryValue Key="command" Value='"[PYTHONW_EXE]" -m idlelib "%L" %*' Type="string" /> |
| 86 | + </RegistryKey> |
| 87 | + </Component> |
| 88 | + <Component Id="assoc_editwithidle_nocon_vista" Directory="InstallDirectory"> |
| 89 | + <Condition>VersionNT = 600</Condition> |
| 90 | + <RegistryKey Root="HKCR" Key="$(var.TestPrefix)Python.NoConFile\Shell\editwithidle$(var.MajorVersionNumber)$(var.MinorVersionNumber)$(var.Suffix32)"> |
| 91 | + <RegistryValue Value="!(loc.EditSubMenu)" Type="string" KeyPath="yes" /> |
| 92 | + <RegistryValue Key="command" Value='"[PYTHONW_EXE]" -m idlelib "%L" %*' Type="string" /> |
| 93 | + </RegistryKey> |
37 | 94 | </Component> |
38 | 95 | </Feature> |
39 | 96 | </Product> |
|
0 commit comments