2022年5月
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        
無料ブログはココログ

« 「自動フォルダタイプ設定の無効化」は使用禁止。 | トップページ | エラーコードの調べ方 »

2022年4月18日 (月)

「このテンプレートをすべてのサブフォルダーに適用する」は使用禁止。

フォルダの「カスタマイズ」、「フォルダの種類」で
「このテンプレートをすべてのサブフォルダーに適用する」は使用禁止。

使うと、各フォルダのdesktop.iniのFolderType=が無効になる。

代わりに、カスタマイズ済の親フォルダをInherit.vbsにドロップする。

Path=WScript.Arguments.Item(0)
Set fso=CreateObject("Scripting.FileSystemObject")
Set Re=New RegExp
Re.Pattern="^foldertype=(\w+)$"
Re.IgnoreCase=True
Re.MultiLine=True
Set File=fso.OpenTextFile(Path & "\desktop.ini",1,0,-2)
Text=File.ReadAll
File.Close
Set Matches=Re.Execute(Text)
FolderType=Matches.Item(0).Value
Call SubFolders(fso.GetFolder(Path))
WScript.Quit

 

Sub SubFolders(Folder)
For Each SubFolder In Folder.SubFolders
  Call Customize(SubFolder)
Next
End Sub

Sub Customize(Folder)
Path=Folder.Path & "\desktop.ini"
If fso.FileExists(Path) Then
  Set File2=fso.GetFile(Path)
  File2.Attributes=File2.Attributes And Not 6
  Set File=fso.OpenTextFile(Path,1,0,-2)
  Text=File.ReadAll
  File.Close
Else
  Text=""
End If
If Re.Test(Text) Then
  Text=Re.Replace(Text,FolderType)
Else
  Text="[ViewState]" & vbCrLf & FolderType & vbCrLf & Text
End If
Set File=fso.OpenTextFile(Path,2,True,0)
File.Write Text
File.Close
Set File2=fso.GetFile(Path)
File2.Attributes=File2.Attributes Or 6
Folder.Attributes=Folder.Attributes Or 1
End Sub

« 「自動フォルダタイプ設定の無効化」は使用禁止。 | トップページ | エラーコードの調べ方 »