MoveFileEx によるファイル遅延コピーの挙動

挙動 OS によって違うでやんの。

Windows 2000 , XP は、ドライバをロード後にファイルをコピー。
Windows 2003 の場合は、ドライバのロード前にファイルをコピー。

他の OS は確認していないけれども、XP と 2003 が境目になっている気がする。多分。

これの何が問題かって、ドライバのコピー処理を遅延コピーで行った場合、Windows 2000 と XP の場合に再起動後も前回のドライバがロードされちゃう。

今作っている製品は、自動アップデートを実装しているのだが、ドライバの置き換えが上手く出来ていない為にアップデート→再起動後では動作が不安定になってしまう。
んで、さらに再起動すると動作が安定してくれる。特定するのに2日もかかってしまった。

お蔭様でハマッタヨ。

[追記]
・・・フィルタドライバ等の挙動を考慮すると、上の挙動ありえないな・・・。
ドライバのリロードが走る?
う〜ん。
良くわからんけど、とりあえずドライバは、遅延コピーしては駄目って事で。