使用Excel VBA更改文件夹安全权限

我正在尝试编写一些代码将文本文件放到一个安全的文件夹中。 该文件夹的属性已经设置为只读,以便内部的文件是安全的,不能改变,但仍然可以阅读。

FileSystemObject将允许我使用属性属性,我可以设置为1(只读),但是这很容易被覆盖。

我的下一个端口是GetAclInformation

我下载了一些代码,并通过它的一大部分,但在GetAclInformation崩溃的Excel。

然后,我继续看,所以使用ADsSecurity DLL。 这返回一个错误说明

该ActiveX不能创build该对象。

我已经下载了dll的一个副本,并把它放到windows \ syswow64目录中,然后用RegSvr32注册,它返回成功。

我可以添加所需的引用,并在对象查看器中查看对象。 但尝试迟到和早期绑定没有影响,它仍然错误说ActiveX不能创build对象。

有没有人有什么想法或build议尝试?

 Sub TestApproval() Dim oSec As New ADsSecurity Dim oSd As Object, oDac1 As Object, oAce As Object Set oSec = New ADsSecurity Set oSd = oSec.GetSecurityDescriptor(CStr("FILE://C:\Test")) Set oDac1 = oSd.DiscretionaryAcl For Each oAce In oDac1 Debug.Print oAce.trustee & "|" & oAce.AceType & "|" & oAce.AccessMask & "|" & oAce.AceFlags & "|" & oAce.Flags & "|" & oAce.ObjectType & "|" & oAce.InheritedObjectType Next oAce Set oSec = Nothing Set oSd = Nothing Set oDac1 = Nothing End Sub 

提前致谢 :)