閉じる

FILE_SHARE_DELETEと FILE_FLAG_DELETE_ON_CLOSE

CreateFileでファイルを作成したはいいが、何らかの事情で削除が必要になることがある。
CloseHandleして DeleteFileで良さそうにも思えるけど、これをアトミックに処理する方法がない。
そんな時は CreateFileに FILE_SHARE_DELETEを指定しておく。
すると、CloseHandleしなくても DeleteFileが出来るようになり幸せになれる。
DeleteFileではなく FILE_FLAG_DELETE_ON_CLOSEを指定して CreateFileでもいけるようなのだけど、うまくいかんかった。

コメントを残す

メールアドレスが公開されることはありません。必須項目には印がついています *

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)