@echo off
Wfolder2 "SET Folder=" "C:" "选择文件夹" > temp.bat
call temp.bat
del temp.bat
echo.%Folder%
pause
如果不想用第三方工具,可以用以下VBS:
Const COMPUTER = &H11&
Const WINDOW_HANDLE = 0
Const OPTIONS = 0
Set objShell
Set
Set
strPath
Set
Set
(WINDOW_HANDLE, "打开一个文件夹:", OPTIONS, strPath)
If
Wscript.echo
Wscript.Quit
End
Set
objPath
Wscript.Echo
'设置默认打开的目录:
' COMPUTER = &H31& 表示默认打开“网络连接”
' COMPUTER = &H30& 表示默认打开“管理工具”
' COMPUTER = &H29& 表示默认打开“system32”
' COMPUTER = &H28& 表示默认打开“C:\Documents and Settings\Administrator”
' COMPUTER = &H27& 表示默认打开“My Pictures(我的文档中的图片收藏)”
' COMPUTER = &H26& 表示默认打开“Program Files”
' COMPUTER = &H25& 表示默认打开“system32”
' COMPUTER = &H24& 表示默认打开“WINDOWS”
' COMPUTER = &H23& 表示默认打开“Application Data”
' COMPUTER = &H22& 表示默认打开“History”
' COMPUTER = &H21& 表示默认打开“Cookies”
' COMPUTER = &H20& 表示默认打开“Temporary Internet Files”
' COMPUTER = &H19& 表示默认打开“桌面(Administrator)”
' COMPUTER = &H18& 表示默认打开“启动(All Users)”
' COMPUTER = &H17& 表示默认打开“程序(All Users)”
' COMPUTER = &H16& 表示默认打开“「开始」菜单”
' COMPUTER = &H15& 表示默认打开“Templates”
' COMPUTER = &H14& 表示默认打开“Fonts”
' COMPUTER = &H13& 表示默认打开“NetHood”
' COMPUTER = &H12& 表示默认打开“网上邻居”
' COMPUTER = &H11& 表示默认打开“我的电脑”
' COMPUTER = &H10& 表示默认打开“桌面(Administrator)”
' COMPUTER = &H9& 表示默认打开“SendTo”即右键中的“发送到”
' COMPUTER = &H8& 表示默认打开“我最近的文档”
' COMPUTER = &H7& 表示默认打开“启动(Administrator)”
' COMPUTER = &H6& 表示默认打开“收藏夹(Favorites)”
' COMPUTER = &H5& 表示默认打开“我的文档”
' COMPUTER = &H4& 表示默认打开“打印机和传真”
' COMPUTER = &H3& 表示默认打开“控制面板”
' COMPUTER = &H2& 表示默认打开“程序(Administrator)”
' COMPUTER = &H0& 表示默认打开“桌面(Administrator)”
把这个VBS应用到批处理上:
@echo off
(
echo Set objShell=CreateObject^("Shell.Application"^)
echo Set objFolder=objShell.BrowseForFolder _
echo ^(WINDOW_HANDLE,"选择一个文件夹:",OPTIONS,"::{20D04FE0-3AEA-1069-A2D8-08002B30309D}"^)
echo If objFolder Is Nothing Then Wscript.Quit
echo Set objFolderItem=objFolder.Self
echo Wsh.Echo objFolderItem.Path
)>BrowseFolder.vbs
for /f "delims=" %%a in ('cscript //nologo BrowseFolder.vbs') do set strFolder=%%a
del BrowseFolder.vbs
echo.%strFolder%
explorer "%strFolder%"
pause
Last edited by newxso on 2009-5-8 at 22:35 ]