Obtain the full path to any of the special Windows folders (Desktop, Start Menu etc).
Syntax
strMyPath = objShell.SpecialFolders("strFolderName")
or
strMyPath = objShell.SpecialFolders.Item("strFolderName")
Arguments:
objShell A WScript.Shell object
strFolderName : One of the following special folders
(not all are available to all flavors of Windows)
AllUsersDesktop
AllUsersStartMenu
AllUsersPrograms
AllUsersStartup
Desktop
Favorites
Fonts
MyDocuments
NetHood
PrintHood
Programs
Recent
SendTo
StartMenu
Startup
Templates
Returns:
strMyPath : The full path to the special folder
returns NULL if the folder is not available.
Examples
Return the full path to the Windows Desktop:
Dim objShell As Object
Dim strPath As String
Set objShell = Wscript.CreateObject("Wscript.Shell")
strPath = objShell.SpecialFolders("Desktop")
wscript.echo strPath
To read a value from the script above into a CMD batch file:
FOR /F "usebackq delims=" %%i in (`cscript FindDesktop.vbs`) DO Set _DeskTopDir=%%i
List all special folders:
For Each strFolder In WshShell.SpecialFolders
MsgBox strFolder
Next
“An artist who was once known as Prince
On the stage he would wiggle and mince
And then, for a giggle, He changed his name to a squiggle
And nobody's heard of him since” ~ Tim Brooke-Taylor
Equivalent Powershell command: via environment variables or (Get-WMIObject Win32_OperatingSystem).SystemDirectory
© Copyright SS64.com 1999-2013
Some rights reserved