C# 2005
xml 構成ファイルを読み取るカスタム アクションが必要なため、インストーラー クラスを使用しています。
そのため、ユーザーがセットアップをダブルクリックすると、同じフォルダーに config.xml ファイルが作成されます。インストール イベントでこの config.xml ファイルを読みたいと思います。このフォルダーには、setup.exe と config.xml が含まれます。
ただし、C:\windows\system32 の下で探しているため、config.xml ファイルが見つかりません。applicationstartup.pathを使用してこれを見つけました。ただし、setup と config.xml を含む setup フォルダーはデスクトップにあります。
現在の場所で探すと思っていました。どちらがセットアップフォルダーになります。
問題は、私のセットアップ フォルダーがインターネットからダウンロードされ、すべてのユーザーがそれをダウンロードして自分のコンピューターの任意の場所に解凍できることです。
on install イベントのコード スニペットを次に示します。
アドバイスをありがとう
protected override void OnAfterInstall(System.Collections.IDictionary savedState)
{
DataTable dt = new DataTable();
MessageBox.Show(Application.StartupPath.ToString());
dt.ReadXml("config.xml");
MessageBox.Show(base.Context.Parameters["CAT_TargetDir"].ToString());
}