- PR -

旧バージョンの Application.UserAppDataPath の取得

1
投稿者投稿内容
KI
大ベテラン
会議室デビュー日: 2007/01/10
投稿数: 239
投稿日時: 2007-04-24 17:45
VS2005 C# にて、Windows フォームアプリケーションを開発しています。
アプリケーションのユーザーごとのデータを保持するため、
Application.UserAppDataPath で取得できるパスに
固定ファイル名でデータを保存する仕様なのですが、
このパスは MSDN にも記載してある通り

ベース パス\\ CompanyName \\ ProductName \\ ProductVersion

という形式で作成されるので、バージョンアップした際は、
古いバージョンのファイルを自動で引き継ぐことができません。

そこで、新バージョンの初回起動時に手動で引き継ぐことを考えたのですが、
以前のバージョンの Application.UserAppDataPath を取得する方法を見つけられませんでした。
現バージョンの Application.UserAppDataPath を基準に
フォルダ名で調べたりするのはおかしいと思うのですが、
それ以外に方法が思いつかない状態です。

他によい方法をご存知の方いらっしゃいましたら教えてください。
よろしくお願いします。
sabro
会議室デビュー日: 2006/10/19
投稿数: 17
投稿日時: 2007-05-05 16:22
バージョンを超えて、データを保持したい場合は、独自のデータ保存フォルダを作るしかないようですね。@ITに参考になりそうなページがあったので、挙げておきます。

@IT:.NET TIPS アプリケーション設定情報はどこに保存すべきか? - C# VB.NET
_________________
sabro
ヒマをみつけてWeb開発
KI
大ベテラン
会議室デビュー日: 2007/01/10
投稿数: 239
投稿日時: 2007-05-07 16:33
返信ありがとうございます。

やはり難しいのですね。
私もいろいろ調べてはみたのですが、どうも上手い手段はなさそうに思っていました。
独自のフォルダを作るのも少し気がひけますね。
バージョンに依存しないデータフォルダのようなものが
標準で用意されているといいと思うのですが…

Settings ファイルはアップグレードできるみたいなので、
今回はこちらに出力するようにして対応しようかと考えています。
1

スキルアップ/キャリアアップ(JOB@IT)