あなたはこのような何かを試すことができます:あなたがする必要があるのは、フォルダ属性で遊ぶ
Option Explicit
Dim fso,folder_path,folder,f
folder_path = "c:\test"
Set fso = CreateObject("Scripting.FileSystemObject")
Set folder = fso.GetFolder(folder_path)
For each f in folder.SubFolders
'wscript.echo f & "\PST"
If Not fso.FolderExists(f & "\PST") Then
fso.CreateFolder(f & "\PST")
Call Hide(f & "\PST")
End If
If fso.FolderExists(f & "\PST") Then
Call Hide(f & "\PST")
End If
Next
'**********************************************
Sub Hide(MyFolder)
Dim Command,Result,Ws
Command = "Cmd /c attrib +h " & DblQuote(MyFolder) &""
'wscript.echo Command
Set Ws = CreateObject("Wscript.Shell")
Result = Ws.Run(Command,0,True)
End Sub
'**********************************************
Function DblQuote(Str)
DblQuote = Chr(34) & Str & Chr(34)
End Function
'**********************************************
あなたは既になぜちょうど*クルミを割るためにハンマーを使用して* attrib'は私見である ''コールするWScript.Shell'を使用して、 'Hidden'を設定することで、属性を変更しないでFSOを呼び出しています。 – Lankymart
@Lankymart私は難しいやり方でそれをやりたいのですが、それは5/5で動作します:) – Hackoo
これは巨大なスクリプトの一部であり、その代わりに2つのCOMオブジェクトをインスタンス化しなければならないと想像しましたか?もしそれらのオブジェクトがメモリ上に正しくリリースされていない場合、そのパフォーマンスには何の影響がありますか?(パフォーマンスが良くなるのは興味深いでしょう)*。 – Lankymart