有人敢告诉我CFile:shareDenyWrite 怎么用吗
答案:1 悬赏:0
解决时间 2021-01-16 22:06
- 提问者网友:呐年旧曙光
- 2021-01-16 11:16
有人敢告诉我CFile:shareDenyWrite 怎么用吗
最佳答案
- 二级知识专家网友:不想翻身的咸鱼
- 2021-01-16 11:53
C/C++ code
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
CFile fileW(_T("write.txt"), CFile::modeCreate | CFile::modeWrite | CFile::shareDenyWrite);// 阻止其他进程对其共享写
fileW.Write(_T("1"), sizeof(TCHAR));
fileW.Flush();
CFile fileR(_T("write.txt"), CFile::modeRead | CFile::shareDenyNone);// 只读并且和其他进程共享方式打开文件,可以成功
TCHAR szRead[1] = {0};
fileR.Read(szRead, sizeof(TCHAR));
cout << szRead[0] << endl;
CFile fileR2(_T("write.txt"), CFile::modeRead | CFile::shareDenyNone);// 同样模式再打开一次依然成功
fileR2.Read(szRead, sizeof(TCHAR));
cout << szRead[0] << endl;
CFile fileW2(_T("write.txt"), CFile::modeCreate | CFile::modeWrite | CFile::shareDenyNone); // 读方式打开这个文件,就失败了,这就是shareDenyWrite的效果
fileW2.Close();
fileR2.Close();
fileR.Close();
fileW.Close();
LS敢明白不?
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
CFile fileW(_T("write.txt"), CFile::modeCreate | CFile::modeWrite | CFile::shareDenyWrite);// 阻止其他进程对其共享写
fileW.Write(_T("1"), sizeof(TCHAR));
fileW.Flush();
CFile fileR(_T("write.txt"), CFile::modeRead | CFile::shareDenyNone);// 只读并且和其他进程共享方式打开文件,可以成功
TCHAR szRead[1] = {0};
fileR.Read(szRead, sizeof(TCHAR));
cout << szRead[0] << endl;
CFile fileR2(_T("write.txt"), CFile::modeRead | CFile::shareDenyNone);// 同样模式再打开一次依然成功
fileR2.Read(szRead, sizeof(TCHAR));
cout << szRead[0] << endl;
CFile fileW2(_T("write.txt"), CFile::modeCreate | CFile::modeWrite | CFile::shareDenyNone); // 读方式打开这个文件,就失败了,这就是shareDenyWrite的效果
fileW2.Close();
fileR2.Close();
fileR.Close();
fileW.Close();
LS敢明白不?
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息