Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>I converted an application from being a perMachine install to be a perUser install. In order to properly convert the install I had to add a registry key for each of the components I have. </p> <p>Originally I had the following:</p> <pre><code>&lt;Component Id="C.MyExe"&gt; &lt;File Id="Fi.MyExe" Name="$(var.MyExe.TargetFileName)" Source="$(var.MyExe.TargetPath)" DiskId="1"&gt; &lt;Shortcut Id="SC.StartMenu" Directory="D.ApplicationMenuDir" Name="$(var.AppName)" WorkingDirectory="INSTALLDIR" Icon="MY_ICON.ico" IconIndex="0" Advertise="yes" /&gt; ... </code></pre> <p>When I moved the exe component to the user install I had to do something like this:</p> <pre><code>&lt;Directory Id="LocalAppDataFolder" Name="AppData"&gt; &lt;Directory Id="MyAppDirectory" Name="$(var.AppName)"&gt; &lt;Component Id="C.MyExe" Guid="{MY_GUID}"&gt; &lt;CreateFolder /&gt; &lt;RemoveFolder Id="RemoveMyAppDirectory" On="uninstall" /&gt; &lt;RegistryKey Root="HKCU" Key="Software\MyCompany\MyApp"&gt; &lt;RegistryValue Name="MainExe" Value="1" KeyPath="yes" Type="integer" /&gt; &lt;/RegistryKey&gt; &lt;File Id="Fi.MyExe" Name="$(var.MyExe.TargetFileName)" Source="$(var.MyExe.TargetPath)" DiskId="1" Checksum="yes"&gt; &lt;/File&gt; &lt;/Component&gt; ... </code></pre> <p>The most important part is that you will have to add a registry key which points to <code>HKEY_CURRENT_USER</code>. I added a registry value for each component which indicates that the component is installed.</p> <p>I also had to remove the following: <code>Advertise="yes"</code>. </p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. VO
      singulars
      1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload