Last Updated 2005/09/07
Programming Tips Visual C++ API  索 引 
使用中ファイルの上書き
2005/09/07

MSVCRT.DLL などを上書きする時に共有違反になってしまう.
これは使用中だからである.

WindowNT 系では以下の様に更新する.

上書き失敗すれば別名でどこかに保存する.(MSVCRT.D01 など)

    if(MoveFileEx(  "msvcrt.dll", NULL, MOVEFILE_DELAY_UNTIL_REBOOT) ) {
        // 削除予約 OK
        if(MoveFileEx(  "msvcrt.001", "msvcrt.dll", MOVEFILE_DELAY_UNTIL_REBOOT) ) {
            // リネーム予約 OK
        }
    }

これで再起動時にファイル更新される.

Windows95 系では MoveFileEx() は使用できないので WinInit.ini を使用する.


参照
WININIT.INI
前後のTips
使用中ファイルの上書き

DSS ProgrammingTipsCGI Ver2.02