1

私はちょうどwixチュートリアルに従っていて、 Visual Studio 2012で簡単なインストーラーを作成しました.

ユーザーの AppData フォルダーに Excel アドインをインストールしようとしています。従来、アドインを %AppData%\Roaming\Microsoft\AddIns にコピーするバッチ ファイルを提供していました。私はそれをwixで複製しました:

<Directory Id="TARGETDIR" Name="SourceDir">
  ... other stuff
  <Directory Id="AppDataFolder" Name="AppData">
    <Directory Id="Microsoft" Name="Microsoft">
      <Directory Id="AddIns" Name="AddIns">
        <Component Id="MyAddin" Guid="...">
          <File Id="MyAddinXla" Source="..\Data\MyAddin.xla"/>
          <RemoveFolder Id="Microsoft" On="uninstall" Directory="Microsoft"/>
          <RemoveFolder Id="AddIns" On="uninstall" Directory="AddIns"/>
          <RemoveFile Name="MyAddin.xla" Id="MyAddinXla" On="uninstall"/>
          <RegistryValue Root='HKCU' Key='Software\[Manufacturer]\[ProductName]\AddinKeyPath' Type='string' Value='' KeyPath='yes' />
        </Component>
      </Directory>
    </Directory>
  </Directory>
</Directory>

現在、インストール前にフォルダーが既に存在していても、RemoveFolder ディレクティブがない場合、wix コンパイラーは文句を言います。

アプリをアンインストールすると、AddIns ディレクトリ自体が削除されます (他には何もありません)。

私の質問は、AddIns フォルダーが空の場合に削除されることを気にする必要がありますか (Microsoft アプリはそれなしで苦労しますか)、必要な場合は、インストーラーにそれを削除しないように指示するにはどうすればよいですか?

4

0 に答える 0