- - PR -
JITコンパイラの動作について
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2003-01-12 21:33
良くは分かりませんが
XP以降.NET Server等にはバックアップ関連のボリュウム シャドウ コピーの 機能が付いているみたいです。 XPであればコントロールツールの管理ツールでサービスで動作しているかが確認できます。volume shadow copy(vssvc.exe) ただし、動作している時何時バツクアツプ取るかはまだ分かりません。 シャドウコピー(バックアップ)が存在しないとSystem.Reflection.Assembly.GetExecutingAssembly().Location (配置アッセンブリexe)を使用と成っていますが、もしバツアップが有るときは何時も そちらを使うと言う事ですかね?、これだとexeフアイルを入れ替えてもバックアップが常に使われる為、動作は以前のアッセンブリで動作し更新できない事と成りますが。 可能性の一つとして、かなり強引に推測していますが、間違っていますよね?。 |
|
投稿日時: 2003-01-12 23:49
シャドウコピーについてはあまり資料がないので良くわかりませんが、通常のWinFormアプリなどはシャドウコピーされないと思いますよ。通常使用でシャドウコピーする理由があるとは思えませんし。
心配なのであれば、System.Windows.Forms.Application.StartupPathなどで起動された場所を取得してみるのも良いかも知れません。 何となく、exeファイル自体が上書きできていないか、ビルド時にファイルが更新されていないだけのような気がしています。プロジェクトのdebugディレクトリのexeファイルを上書きしたとかもあり得ますよね。 |
|
投稿日時: 2003-01-13 07:42
ニ天さん、色々有難う御座いました。
結局、立ち上がり時に 起動アッセンブリのバージョンや作成日付及び、 System.Windows.Forms.Application.StartupPathと System.Reflection.Assembly.GetExecutingAssembly().Locationを 比較し、違った時はその情報をログに残す様にしました。 これで様子をみて見ます。 |