2012-03-09 10 views
5

エンドユーザがコンパイルするソースコードを含むSDKのインストーラを作成しています。WIXでユーザのホームディレクトリを参照するには

私のWixインストーラは、これをデフォルトでユーザのホームディレクトリに入れてもらいたいのですが、使用する正しいプロパティ名を見つけることができません。

答えて

2

私はあなたがPersonalFolderを探していると思います。

ここでは特別なフォルダの完全なリストがあります:

http://msdn.microsoft.com/en-us/library/aa370905%28VS.85%29.aspx#system_folder_properties

+0

探していますユーザーの実際のフォルダドキュメントフォルダは機能しますので、ありがとう! – Rob

+0

ああ!申し訳ありません。それはとにかくうまくいってうれしい。 – gymbrall

3

あなたはまた、[%HOMEPATH]HOMEPATH環境変数を参照することができます。プロパティに使用される構文の詳細については、Formattedデータ型を参照してください。

+2

関連するメモには、 '[%HOMEDRIVE]'もあります。これは、 '[%HOMEDRIVE] [%HOMEPATH]'のフルパスを取得するために接頭辞を付けることができます。あるいは '$(env.HOMEDRIVE)$(env.HOMEPATH)'を使うこともできます。 – Cameron

+2

...私の前のコメントの最後の部分を無視すると、 '$(env。)'バージョンはインストール時ではなくコンパイル時に評価されます! '[%USERPROFILE]'もあります。 – Cameron

+0

... '[%HOMEDRIVE] [%HOMEPATH]'は '[%USER_PROFILE]'とは異なる可能性があります。 – Cameron

0

この覗く将来的には誰でも、この[%のHOMEPATH]を動作させるためにどのように思っては、うまくいけば、これはあなたを支援します。PersonalFolderは、現在のユーザーのドキュメントフォルダで、私は

<!-- 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>' 
関連する問題