我想在C:\windows\XXX
我的应用程序的“TrustedInstaller”下添加一些文件(Windows 保护文件夹,在 Vista 中)。我不想替换任何文件,因此 Windows 资源(以前的文件)保护没有问题。我有将“所有权”更改为当前登录管理员的代码,但是,我不知道如何以编程方式设置其文件权限。我正在使用 VC++/MFC 进行开发。
谢谢
我想在C:\windows\XXX
我的应用程序的“TrustedInstaller”下添加一些文件(Windows 保护文件夹,在 Vista 中)。我不想替换任何文件,因此 Windows 资源(以前的文件)保护没有问题。我有将“所有权”更改为当前登录管理员的代码,但是,我不知道如何以编程方式设置其文件权限。我正在使用 VC++/MFC 进行开发。
谢谢
我不是 100% 确定你真正想要什么(你希望它看起来像 TrustedInstaller 安装的文件吗?)但看看这个使用 SetNamedSecurityInfo 的例子。您通常需要为您的文件构建一个自由访问控制列表 (DACL),但是您可以使用 GetNamedSecurityInfo 从另一个具有您想要克隆的权限的文件“借用”一个,因为从头开始构建 DACL 相当烦人。
一个简单的方法是只使用系统函数来运行 icacls 并使用您需要的任何参数。请注意,它位于 cstdlib (#include <cstdlib>)
system("icacls <params>");