【问题标题】:Opening a browser to select a file from CMD打开浏览器从 CMD 中选择文件
【发布时间】:2013-09-21 23:24:04
【问题描述】:

我目前正在开发一个带有批处理文件的小型项目安装程序。

我的批处理文件首先检查 JAVA_HOME 是否在环境变量中定义。如果不是,我希望能够打开一个资源管理器,以便用户可以选择他的 JAVA 文件夹的路径。 我想问的另一个选项是是否有人知道一个不错的 GUI 界面(非 Java 和开源),所以我提示用户选择他的 JAVA 文件夹并设置 JAVA_HOME (我知道我可以通过命令提示符提示用户输入路径)

举个例子

IF "%JAVA_HOME%" == "" (
echo JAVA_HOME was not set, please enter path to JAVA folder: 
set /p JAVA_HOME= ---> PROMPT GUI FOR SELECTION

感谢您的任何建议

【问题讨论】:

    标签: windows user-interface batch-file cmd


    【解决方案1】:

    这是来自我已经隐藏起来的 Usenet 帖子。

    来自:“马特·威廉姆森”
    新闻组:alt.msdos.batch.nt
    主题:回复:通过 VBScript 发送电子邮件
    日期:2007 年 7 月 16 日星期一 09:58:19 -0400

    @echo off
    :BrowseFolder
    set Result=
    set input=%1
    
    :: Temporary files
    set vbs=%temp%\_.vbs
    set tmp=%temp%\_.cmd
    
    :: Build VBScript file
    findstr "'%skip%VBS" "%~f0" > "%vbs%"
    
    :: Run the script with WSH
    cscript //nologo "%vbs%" > "%tmp%"
    
    :: Read the output file and set Path as Env variable %Result%
    for /f "delims=" %%a in (%tmp%) do %%a
    
    echo %result% & pause
    DEL %VBS%
    DEL %TMP%
    
    endlocal & goto :EOF
    
    '
    '.......................................................
    'The Visual Basic Script
    '
    set WshShell=WScript.CreateObject("WScript.Shell") 'VBS
    set shell=WScript.CreateObject("Shell.Application") 'VBS
    sInput=WshShell.ExpandEnvironmentStrings("%input%") 'VBS
    set folder=shell.BrowseForFolder(0,replace(sInput,chr(34),""),0) 'VBS
    if typename(folder)="Nothing" Then  'VBS
    wscript.echo "set Result=Dialog Cancelled" 'VBS
    WScript.Quit(1) 'VBS
    end if 'VBS
    set folderItems=folder.Items() 'VBS
    set folderItem=folderItems.Item() 'VBS
    pathname=folderItem.Path 'VBS
    wscript.echo "set Result="& chr(34) & pathname & chr(34) 'VBS
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-12-24
      • 1970-01-01
      • 2021-05-26
      • 1970-01-01
      • 1970-01-01
      • 2014-08-24
      • 2015-09-06
      • 1970-01-01
      相关资源
      最近更新 更多