Fråga : VB skrivar till enble arv på mappar och sparar

Hi experter, att se för
Im skrivar till enble arv på mappar, och files

Here är skriva som var skriftligt vid Chris-Bucklar, emellertid skriva fungerar precis sparar på, så den skulle är lätt att ett sakkunnigt i VBscript ändrar den för att inkludera href= " http://www.experts-exchange.com/Security/Operating_Systems_Security/Windows/Q_21953774.html#discussion " för folders.

rity/Operating_Systems_Security/Windows/Q_21953774.html#discussion
för http://www.experts-exchang e.com/Secu > för
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
" codeBody " " >Option för class= " för
Related lösningar för class= ": title= " arv för Change NTFS sjunker på files

Svar : VB skrivar till enble arv på mappar och sparar


Hmm… försök detta?

Chris
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
Explicit alternativ

Const FS_TREE_ROOT = ”C:\Temp”,

Const SE_DACL_PRESENT = 4
Const SE_DACL_AUTO_INHERITED = 1024
Const SE_DACL_PROTECTED = 4096
Const SE_SELF_RELATIVE = 32768

Const ENABLE_INHERITANCE = 1
Const COPY_AND_TURN_OFF_INHERITANCE = 2
Const REMOVE_AND_TURN_OFF_INHERITANCE = 3

',
'Subroutines
',

UnderResetInheritance (strPath, intWhatToDoWithInheritancen)
      Dunkel objFileSecSetting, objSecurityDescriptor, objMethod, objInParam
      Dunkelt intControlFlagsVar

      Uppsättning som objFileSecSetting = objService.Get (”Win32_LogicalFileSecuritySetting.Path=-""" &_
            Byt ut (strPath, ”\”, ”\ \”) & """"),
      objFileSecSetting.GetSecurityDescriptor-objSecurityDescriptor      

      Välj fallintWhatToDoWithInheritancen
      Case ENABLE_INHERITANCE
            intControlFlagsVar = SE_DACL_PRESENT + SE_DACL_AUTO_INHERITED + SE_SELF_RELATIVE
      Fall COPY_AND_TURN_OFF_INHERITANCE, REMOVE_AND_TURN_OFF_INHERITANCE
            intControlFlagsVar = SE_DACL_PRESENT + SE_DACL_PROTECTED + SE_SELF_RELATIVE      
      Avsluta valt
      
      objSecurityDescriptor.ControlFlags = intControlFlagsVar
            
      Fastställd objMethod = objFileSecSetting.Methods_ (”SetSecurityDescriptor”)
      Fastställd objInParam = objMethod.inParameters.SpawnInstance_ ()
      objInParam.Properties_.item (”deskriptor”) = objSecurityDescriptor
      
      objFileSecSetting.ExecMethod_ ”SetSecurityDescriptor”, objInParam
Avsluta suben

Sub DoWorkOnFolders (strPath)
      Dunkel objWorkingFolder som är objWorkingFile, objWorkingSubFolder

      'Nollställa jämnt arv för mappen
      ResetInheritance strPath, ENABLE_INHERITANCE

      Fastställd objWorkingFolder = objFileSystem.GetFolder (strPath)

      WScript.Echo ”arbete på” & strPath
      
      För varje som är objWorkingFile i objWorkingFolder.Files
            ResetInheritance objWorkingFile.Path, ENABLE_INHERITANCE
      Därefter

      För varje objWorkingSubFolder i objWorkingFolder.SubFolders
            DoWorkOnFolders objWorkingSubFolder.Path
      Därefter
Avsluta suben

',
'Huvudsakligt kodifiera
',

Dunkel objFileSystem, objLocator, objService, objRootFolder som är objFile, objFolder

Fastställd objFileSystem = CreateObject (”Scripting.FileSystemObject”)
Fastställd objLocator = CreateObject (”WbemScripting.SWbemLocator”)
Fastställd objService = objLocator.ConnectServer (”. ” ”rotar/cimv2”)

Fastställd objRootFolder = objFileSystem.GetFolder (FS_TREE_ROOT)

För varje som är objFile i objRootFolder.Files
      ResetInheritance objFile.Path, ENABLE_INHERITANCE
Därefter      

Fastställdt objFile = ingenting

För varje objFolder i objRootFolder.SubFolders
      DoWorkOnFolders objFolder.Path
Därefter

Fastställd objFolder = ingenting

Fastställd objRootFolder = ingenting
Fastställd objService = ingenting
Fastställd objLocator = ingenting
Fastställd objFileSystem = ingenting
Andra lösningar  
 
programming4us programming4us