2012-03-09 8 views
5

Sto creando un programma di installazione per un SDK, che include il codice sorgente che deve essere compilato dall'utente finale.Come riferimento alla home directory dell'utente in WIX

Desidero che il mio programma di installazione Wix lo inserisca nella directory home degli utenti per impostazione predefinita, ma non riesco a trovare il nome della proprietà corretta da utilizzare.

risposta

3

Si potrebbe anche fare riferimento alla variabile HOMEPATH ambiente con [%HOMEPATH]. Per ulteriori dettagli sulla sintassi utilizzata per le proprietà, vedere il tipo di dati Formatted.

+2

Su una nota correlata, c'è anche '[% HOMEDRIVE]' che puoi prefisso per ottenere un percorso completo: '[% HOMEDRIVE] [% HOMEPATH]'. In alternativa, '$ (env.HOMEDRIVE) $ (env.HOMEPATH)' può essere usato. – Cameron

+2

... ignora l'ultima parte del mio commento precedente, le versioni '$ (env.)' Sono valutate al momento della compilazione, non dell'installazione! E nota anche '[% USERPROFILE]'. – Cameron

+0

... e si scopre che è possibile che '[% HOMEDRIVE] [% HOMEPATH]' sia diverso da '[% USER_PROFILE]'. – Cameron

0

Chiunque in futuro alla ricerca in questo, e chiedendosi come fare questo [% HOMEPATH] lavoro, allora speriamo che questo ti aiuta:

<!-- Declare an action which binds the 'user home' to UserFolder 
    (You can replace [%HOMEDRIVE][%HOMEPATH] with [%USERPROFILE], read the difference from internet.) --> 
<CustomAction 
    Id='SpecifyUserFolder' 
    Directory='UserFolder' 
    Value="[%HOMEDRIVE][%HOMEPATH]" /> 

<!-- put this before installation process --> 
<InstallExecuteSequence> 
    <Custom Action="SpecifyUserFolder" Before="InstallFiles" /> 
</InstallExecuteSequence> 

<!-- User home then becomes available here, because the ID matches the declared ID in CustomAction above. --> 
<Directory Id='UserFolder'> 
</Directory>' 
Problemi correlati