在C++中锁定和解锁文件
Lock and Unlock the file in C++
在Windows操作系统中,在我的C++应用程序中,我必须保护已经存在的整个文件,并且我应该能够对该文件进行读写操作。
在关闭文件之前,我应该保护该文件,以便除了我的应用程序或任何用户之外无法访问该文件?
如何在C++实现这一目标?
我正在使用
FILE * fp;
fp = fopen ("file.txt", "w+");
提前谢谢。
>C++不提供文件锁定或文件安全功能,因此您必须依赖平台API。在Windows中,打开文件时是LockFileEx((和UnlockFileEx((,关闭文件时是文件安全性和访问权限。
也就是说,Windows中的安全性是一个非常复杂的主题,因此您应该描述您要实现的目标。我认为您需要禁止其他应用程序读取您的文件,因此在这种情况下,您必须使用密码加密文件。
我不认为使用标准 C 或 C++ 或直接使用FILE*
对象是可能的。话虽如此,Windows具有LockFile
和UnlockFile
的API,您可以使用fcntl
在Posix系统上实现相同的目标
相关文章:
- 我应该在锁定TBitmap画布后解锁它吗
- 虚假唤醒是否会解锁所有等待线程,甚至是不相关的线程?
- c++ 为什么我不应该从不同的线程解锁互斥锁
- 在新作用域中使用unique_lock是否等效于在使用共享资源的工作结束时解锁调用
- "data race"(不是真的)在通知条件变量并解锁关联的互斥锁后
- 程序输入密码并解锁窗口7,8,10
- 在通知之前完成手动解锁
- STD :: Mutex如何在不同的线程中解锁
- 如何使用单个解锁方法(可称为读取器或写入器)实现C++读写器锁?
- 在C++中锁定和解锁文件
- 如何在C 中自动汇总日志消息并自动解锁互斥X
- 如果我们已经手动解锁了unique_lock,那么破坏时会解锁吗?
- 正在解锁手动未定义/不良设计的锁定guard
- 从C 运行代码后解锁绑定(在R中)的问题
- 在功能返回之前,可以解锁Mutex会增加并发
- 当互斥锁解锁时,它会notify_all或notify_one
- 使用Qt qUnCompress功能解压缩文件
- 如何确保在C ++中解锁储物柜?哪种解决方案更好
- 我应该如何在一个功能中锁定wxMutex,并在另一个功能中将其解锁
- 如何在FreeLibrary调用后强制Visual Studio 2015解锁.PDB文件