Windows フォーム プロジェクトがあり、セットアップ ウィザード プロジェクトを作成して、ユーザーが次の次の方法でインストールできるようにしました。
このプロジェクトは Microsoft Access をデータベースとして使用しており、データベース ファイルを SetupWizard に適切に追加したところ、すべて問題ありませんでした。
ただし、再インストール後、Windows がデータベース ファイルを「アプリケーション フォルダ」から C:\users\myUser\AppData\Local\VirtualStore\Program Files (x86)\ にコピーしていることに気付きました。
参考までに、app.config の接続文字列:
<connectionStrings>
<add name="<ProjectName>.Properties.Settings.databaseConnectionString"
connectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|\database.mdb;Persist Security Info=True;Jet OLEDB:Database Password=MyPassword"
providerName="System.Data.OleDb" />
</connectionStrings>
ProjectOutput と database.mdb から .exe を同じフォルダーに収集するだけで、完全に機能します。
インストールを行うと、データベースファイルが C:\users\myUser\AppData\Local\VirtualStore\Program Files (x86)\ フォルダーにコピーされます。これは、ユーザーが好きな場所にインストールしてファイルがそこだけにとどまります。(これはソフトウェア要件です)。
「現在のユーザー」と「すべてのユーザー」へのインストールも試みましたが、動作は同じです。