CreateFileOrDir.vbs
'=========================================================================
' CreateFileOrDir.vbs
' VERSION: 1.0
' AUTHOR: Brian Steinmeyer
' EMAIL: sigkill@sigkillit.com
' WEB: https://sigkillit.com
' DATE: 1/1/2011
' COMMENTS: Pass a File or Folder Path to the Sub and It Will Create the
' Full Path of the Directory Structure.
' EXAMPLE: Call CreateFileOrDir("C:\Level 1\Level 2\test.txt")
' Call CreateFileOrDir("C:\Test\Folder\Structure")
'=========================================================================
Option Explicit
Call CreateFileOrDir("C:\Level 1\Level 2\test.txt")
Private Sub CreateFileOrDir(strPath)
On Error Resume Next
Dim objFSO: Set objFSO = CreateObject("Scripting.FileSystemObject")
If objFSO.DriveExists(objFSO.GetDriveName(strPath)) Then
If StrComp(objFSO.GetExtensionName(strPath), "", 1) = 0 Then
If Not objFSO.FolderExists(strPath) Then
If objFSO.FolderExists(objFSO.GetParentFolderName(strPath)) Then
objFSO.CreateFolder strPath 'Create Folder In Current Path
Else
CreateFileOrDir(objFSO.GetParentFolderName(strPath)) 'Recurse Creating Parent Folder
CreateFileOrDir(strPath) 'Recurse Creating Current Folder
End If
End If
Else
If Not objFSO.FileExists(strPath) Then
If objFSO.FolderExists(objFSO.GetParentFolderName(strPath)) Then
objFSO.CreateTextFile strPath, True 'Create File In Current Path
Else
CreateFileOrDir(objFSO.GetParentFolderName(strPath)) 'Recurse Creating Parent Folder
CreateFileOrDir(strPath) 'Recurse Creating Current Folder
End If
End If
End If
End If
On Error Goto 0
End Sub