|
44 | 44 |
|
45 | 45 | <Property Id="INSTALLDIR">
|
46 | 46 | <RegistrySearch Id="InstallPathRegistry"
|
| 47 | + Type="raw" |
| 48 | + Root="HKLM" |
| 49 | + Key="$(var.RegistryKeyPath)" |
| 50 | + Name="InstallPath"/> |
| 51 | + <!-- Also need to search under HKCU to support upgrading from old |
| 52 | + versions. If we wanted to disable backward compatibility, this |
| 53 | + second search could be deleted. --> |
| 54 | + <RegistrySearch Id="InstallPathRegistryCU" |
47 | 55 | Type="raw"
|
48 | 56 | Root="HKCU"
|
49 | 57 | Key="$(var.RegistryKeyPath)"
|
|
56 | 64 | Description="!(loc.NodeRuntime_Description)"
|
57 | 65 | Absent="disallow">
|
58 | 66 | <ComponentRef Id="NodeExecutable"/>
|
| 67 | + <ComponentRef Id="NodeRegistryEntries"/> |
59 | 68 | <ComponentRef Id="NodeVarsScript"/>
|
60 |
| - <ComponentRef Id="NodeStartMenuAndRegistryEntries"/> |
| 69 | + <ComponentRef Id="NodeStartMenu"/> |
61 | 70 | <ComponentRef Id="AppData" />
|
62 | 71 | <ComponentGroupRef Id="Product.Generated"/>
|
63 | 72 |
|
|
129 | 138 | <File Id="node.exe" KeyPath="yes" Source="$(var.SourceDir)\node.exe"/>
|
130 | 139 | </Component>
|
131 | 140 |
|
| 141 | + <Component Id="NodeRegistryEntries"> |
| 142 | + <RegistryValue Root="HKLM" |
| 143 | + Key="$(var.RegistryKeyPath)" |
| 144 | + Name="InstallPath" |
| 145 | + Type="string" |
| 146 | + Value="[INSTALLDIR]" |
| 147 | + KeyPath="yes"/> |
| 148 | + <RegistryValue Root="HKLM" |
| 149 | + Key="$(var.RegistryKeyPath)" |
| 150 | + Name="Version" |
| 151 | + Type="string" |
| 152 | + Value="$(var.ProductVersion)"/> |
| 153 | + </Component> |
| 154 | + |
132 | 155 | <Component Id="NodeVarsScript">
|
133 | 156 | <File Id="nodevars.bat" KeyPath="yes" Source="$(var.RepoDir)\tools\msvs\nodevars.bat"/>
|
134 | 157 | </Component>
|
|
151 | 174 | </DirectoryRef>
|
152 | 175 |
|
153 | 176 | <DirectoryRef Id="ApplicationProgramsFolder">
|
154 |
| - <Component Id="NodeStartMenuAndRegistryEntries"> |
| 177 | + <Component Id="NodeStartMenu"> |
| 178 | + <!-- RegistryValue needed because every Component must have a KeyPath. |
| 179 | + Because of ICE43, the Root must be HKCU. --> |
155 | 180 | <RegistryValue Root="HKCU"
|
156 |
| - Key="$(var.RegistryKeyPath)" |
157 |
| - Name="InstallPath" |
158 |
| - Type="string" |
159 |
| - Value="[INSTALLDIR]" |
| 181 | + Key="$(var.RegistryKeyPath)\Components" |
| 182 | + Name="NodeStartMenuShortcuts" |
| 183 | + Type="integer" |
| 184 | + Value="1" |
160 | 185 | KeyPath="yes"/>
|
161 |
| - <RegistryValue Root="HKCU" |
162 |
| - Key="$(var.RegistryKeyPath)" |
163 |
| - Name="Version" |
164 |
| - Type="string" |
165 |
| - Value="$(var.ProductVersion)"/> |
166 | 186 | <Shortcut Id="NodeVarsScriptShortcut"
|
167 | 187 | Name="Node.js command prompt"
|
168 | 188 | Target="[%ComSpec]"
|
|
0 commit comments