在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++) 从其他用户帐户读取文件

每个用户都无法访问UWP App

无法将其他flas动画片段访问到动作脚本3

是否应在 Hyper-V 中创建第 1 代或第 2 代虚拟机?

无法访问 PUBLIC 架构中的表

Windows 中的幻象 \.txt 文件