如何让CreateFile打开文件后,其他的程序也能打开这个文件?

fangongdalu7148 2010-08-12 10:52:40
HANDLE file=CreateFile(TEXT("1.txt"), GENERIC_READ | GENERIC_WRITE,
/* FILE_SHARE_READ | FILE_SHARE_WRITE |FILE_SHARE_DELETE*/NULL , NULL, OPEN_ALWAYS, FILE_FLAG_OVERLAPPED, NULL);
//CloseHandle(file);
cin.get();
这样 打开这个1.txt后, 用记事本就无法打开这个程序了,请问 如何在不关闭这个句柄的情况下 让其他程序也可以打开这个文件?
...全文
111 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
zgsdzhaolanxiang1 2010-08-12
  • 打赏
  • 举报
回复
额 问题解决了 多谢各位
wuchuncai 2010-08-12
  • 打赏
  • 举报
回复
加上这个 FILE_SHARE_READ 就可以让其他程序以 读 的方式打开,其他测序打开也要加上FILE_SHARE_READ
Eleven 2010-08-12
  • 打赏
  • 举报
回复
HANDLE file=CreateFile(TEXT("F:\\1.txt"), GENERIC_READ | GENERIC_WRITE,
FILE_SHARE_READ, NULL, OPEN_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);
if(INVALID_HANDLE_VALUE == file)
{
AfxMessageBox(_T("Error"));
return ;
}
marrco2005 2010-08-12
  • 打赏
  • 举报
回复
HANDLE file=CreateFile(TEXT("1.txt"), GENERIC_WRITE | FILE_SHARE_READ
,

这样试一下
wltg2001 2010-08-12
  • 打赏
  • 举报
回复
将你注释掉的这些加上就行了 /* FILE_SHARE_READ | FILE_SHARE_WRITE |FILE_SHARE_DELETE*/
zgsdzhaolanxiang1 2010-08-12
  • 打赏
  • 举报
回复
汗 沉的真够快的。

15,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 进程/线程/DLL
社区管理员
  • 进程/线程/DLL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧