2013-06-05 4 views
0

Dans notre projet, nous allons supprimer les entrées de registre pour permettre aux utilisateurs non-administrateurs de l'installer.Wix: Comment créer un raccourci sans registre

Notre code actuel est le suivant, j'ai essayé de commenter la section à partir du fichier XML mais j'ai échoué.

Y a-t-il une chance que nous puissions créer le shotcut sans clé de registre? Merci.

<DirectoryRef Id="ApplicationProgramsFolder"> 
    <Component Id="ApplicationShortcut" Guid="C85221B1-70CA-455D-B322-093543BD4DF0"> 
    <Shortcut Id="ApplicationStartMenuShortcut" 
       Name="$(var.ProductName)" 
       Description="$(var.ProductDescription)" 
       Target="[APPLICATIONROOTDIRECTORY]OMOffline.exe" 
       WorkingDirectory="APPLICATIONROOTDIRECTORY" /> 
    <Shortcut Id="RemoteAssistance" 
       Name="Request Remote Assistance" 
       Description="Starts Remote Assistance and creates a password-protected RA ticket that is attached to a new Remote Assistance invitation. The User must enter the e-mail address of the Helper in the To field to send the message to the Helper." 
       Target="[SystemFolder]MSRA.exe" 
       Arguments="/email"/> 
    <Shortcut Id="UninstallProduct" 
       Name="Uninstall $(var.ProductName)" 
       Target="[SystemFolder]msiexec.exe" 
       Arguments="/x [ProductCode] SQLSERVER=&quot;[SQLSERVER]&quot;" 
       Description="Uninstalls $(var.ProductName)" /> 
    <RemoveFolder Id="RemoveApplicationProgramsFolder" 
        Directory="ApplicationProgramsFolder" 
        On="uninstall"/> 
    <!--<RegistryValue Root="HKCU" Key="Software\$(var.ProductManufacturer)\$(var.ProductName)" Name="shortcutsinstalled" Type="integer" Value="1" KeyPath="yes"/>--> 
    </Component> 
</DirectoryRef> 


<DirectoryRef Id="DesktopFolder"> 
    <Component Id="DesktopShortcut" Guid="C03900DF-FFD8-44B8-AA42-1BC72BB9E1F4"> 
    <Shortcut Id="ApplicationDesktopShortcut" 
     Name="$(var.ProductName)" 
     Description="$(var.ProductDescription)" 
     Target="[APPLICATIONROOTDIRECTORY]OMOffline.exe" 
     WorkingDirectory="APPLICATIONROOTDIRECTORY" /> 
    <!--<RegistryValue Root="HKCU" Key="Software\$(var.ProductManufacturer)\$(var.ProductName)" Name="desktopshortcutinstalled" Type="integer" Value="1" KeyPath="yes"/>--> 
    </Component> 
</DirectoryRef> 

Répondre

0

HKCU est entrée par l'utilisateur, Cela ne devrait pas interférer avec votre objectif de faire installer par l'utilisateur. Vous pouvez utiliser http://blogs.msdn.com/b/rflaming/archive/2006/09/30/778690.aspx pour créer un package par utilisateur installable.

Pour répondre à votre question, j'ai essayé l'installation sans valeur de registre. Programme a été autorisé à construire (avec l'erreur ICE38/ICE41), j'ai pu voir le lien post Installation de MSI

Questions connexes