在Windows中创建一个其他用户无法访问的文件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在Windows中创建一个其他用户无法访问的文件相关的知识,希望对你有一定的参考价值。
我正在研究一些为临时存储创建文件的代码。我刚刚开始在FILE_FLAG_DELETE_ON_CLOSE
中使用CreateFile
来确保文件被关闭,即使进程被终止或崩溃。我也使用0
用于dwShareMode
,所以(如果我错了,请纠正我)应该阻止任何其他进程访问该文件。
但是,如果整个系统崩溃怎么办?我猜这将在下次启动时将文件保留为未删除状态。为了防止这种情况,我想创建该文件,以便其他用户无法访问该文件(尽管如果他们可以删除它,只是为了清理它会很好)。我无法找到任何这样的事情的简单例子(我真的需要像https://msdn.microsoft.com/en-us/library/windows/desktop/aa446595(v=vs.85).aspx那样做一些事情吗?)
我这样做的另一个问题是我们的代码有时会在线程模拟下运行(当在服务器的上下文中运行时),所以我不确定这会对事情产生什么影响。我只想要'当前用户'(创建进程的人或者当前线程上模拟的用户)是唯一可以读/写文件的用户。
为什么你只是创建在启动时运行的脚本来删除文件
将脚本放在启动文件夹中,如下所示,脚本将仅在启动期间运行,
你的个人启动文件夹应该是
C:\ Users \\ AppData \ Roaming \ Microsoft \ Windows \ Start Menu \ Programs \ Startup
应该是所有用户启动文件夹
C:\ ProgramData \ Microsoft \ Windows \ Start Menu \ Programs \ Startup
.....
以上是关于在Windows中创建一个其他用户无法访问的文件的主要内容,如果未能解决你的问题,请参考以下文章
无法在 Windows 中以编程方式 (C++) 从其他用户帐户读取文件