检查文件是否已打开并在c ++中写保护

时间:2014-02-25 16:28:02

标签: windows visual-c++

在Windows XP计算机上使用C ++。

  1. 如何检查文件是否已打开?
  2. 如何区分已打开的文件和写保护的文件?
  3. 感谢您的帮助!!

1 个答案:

答案 0 :(得分:0)

首先更容易,然后更复杂: - )

2)使用Win32 API GetFileAttributes并检查FILE_ATTRIBUTE_READONLY

1)如果文件打开但没有阻止您访问的选项,则无法知道

如果它已被锁定,您必须尝试打开它,您将获得一个值为INVALID_HANDLE_VALUE的文件句柄,然后您可以查看例如GetLastError() == ERROR_SHARING_VIOLATION