无忧启动论坛

标题: 批处理如何弹出一个保存文件的窗口?? [打印本页]

作者: free16    时间: 2019-1-24 00:02
标题: 批处理如何弹出一个保存文件的窗口??
在批处理中如何实现弹出一个保存指定类型文件(WIM文件)的窗口?可以用鼠标选择保存的位置和自定义文件名称。
哪位大神会请给写一段批处理代码,谢谢!!
作者: nttwqz    时间: 2019-1-24 00:14
楼主觉得批处理会有这么牛逼的功能吗?

还是借助其他语言或者工具实现吧!要么改变思路和方法
作者: free68    时间: 2019-1-24 01:15
Set "psCommand="(new-object -COM 'Shell.Application')^
.BrowseForFolder(0,'请选择已经挂载的源映像系统装载文件夹路径!',0x0010,0x0011).self.path""
For /f "usebackq delims=" %%I in (`powershell %psCommand%`) do Set "InstallMount=%%I"

上面是选择文件夹路径的批处理代码,想做一个类似的可以返回保存文件路径及文件名的代码,不会做,有会的大神出出手吧,谢谢了!!!
作者: holley2008    时间: 2019-1-24 10:25
请参考:http://www.bathome.net/thread-34496-1-2.html 应该会对你有所帮助!
作者: free16    时间: 2019-1-24 21:30
holley2008 发表于 2019-1-24 10:25
请参考:http://www.bathome.net/thread-34496-1-2.html 应该会对你有所帮助!

谢谢您的关注与回复,这篇帖子早已看过,并不能实现我所需要的保存指定类型文件的功能。
作者: dos时代菜鸟    时间: 2019-2-26 09:33
本帖最后由 dos时代菜鸟 于 2019-2-26 09:35 编辑

话不多说,上代码。
抄来的,改了改。 用 vbs 调用 mshta .

  1. @ECHO OFF

  2. rem 生成一个 vbs 脚本用于提供选择文件的 界面,其实调用了 mshta
  3.   >"%TEMP%\OPEN_FILE.VBS"  ECHO set WSC=CreateObject("WScript.Shell")
  4. >>"%TEMP%\OPEN_FILE.VBS"  ECHO WSCRIPT.ECHO WSC.Exec("mshta vbscript:""<input type=file id=f><script>f.click();new ActiveXObject('Scripting.FileSystemObject').GetStandardStream(1).Write(f.value)[close()];</script>""").StdOut.ReadAll
  5. rem ---------------------

  6. echo 请选择一个文件:
  7. for /f "delims=" %%c in ('CSCRIPT /NOLOGO "%TEMP%\OPEN_FILE.VBS" ') do (echo 你选择了: & echo %%c)

  8. del "%TEMP%\OPEN_FILE.VBS"
  9. PAUSE
复制代码



win10 环境可用。其他的没测试。




欢迎光临 无忧启动论坛 (http://wuyou.net/) Powered by Discuz! X3.3