使用语言:C#
理论:
我想在临时文件夹中创建一个带有FileOptions.DeleteOnClose的文件.
该文件已成功创建,我将dato写入它,下一步是启动与文件Process.Start(…)相关联的应用程序,并允许用户检查文档,最后关闭我的句柄,一旦其他进程关闭临时文件的句柄,该文件被操作系统删除.
我的问题是,其他进程无法打开文件,即使是阅读,尽管我添加FileShare.ReadWrite | FileShare.Delete到共享模式.
有什么建议么?
解决方法
其他进程需要在打开DeleteOnClose文件时指定FileShare.Delete
从MSDN CreateFile文档:
“
FILE_FLAG_DELETE_ON_CLOSE
… Subsequent open requests for the file fail,unless theFILE_SHARE_DELETE
share mode is specified.”