[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[其他] 【已解决】bat转exe问题求助(感谢flashercs老师)

本帖最后由 yyz219 于 2022-7-28 12:05 编辑

【下面是优秀代码】
把vbs 手动保存到TXT.vbs中,内容:
  1. On Error Resume Next
  2. Set objShell=CreateObject("Wscript.Shell")
  3. Set objHTML=CreateObject("htmlfile")
  4. ClipboardText=objHTML.ParentWindow.ClipboardData.GetData("text")
  5. set fso=wscript.createobject("scripting.filesystemobject")
  6. set file=fso.opentextfile("TXT.$",8,true)
  7. file.writeline ClipboardText
复制代码
然后把TXT.vbs嵌入
嵌入释放到当前目录
而批处理要改成
  1. @echo off
  2. TXT.vbs
  3. set /p TXT=<TXT.$
  4. del TXT.*
  5. if defined TXT start ""  "https://www.baidu.com/s?ie=UTF-8&wd=%TXT%"
  6. exit
复制代码
++++++++++++++++++++++++++++++++++++++++
【下面办法也能够解决问题】
1.将 “百度搜索剪切板内容.bat” 重命名为 “123.bat”【因为它不支持中文】,然后就看图





**********【下面是问题】******************************

工具:BAT转EXEquickbfc.exe
代码:
  1. @echo off
  2. more +8 %0>TXT.vbs
  3. TXT.vbs
  4. set /p TXT=<TXT.$
  5. del TXT.*
  6. if defined TXT start ""  "www.baidu.com/s?ie=UTF-8&wd=%TXT%"
  7. exit
  8. ' 2>nul&@start wscript -e:vbs "%~f0"&goto :eof
  9. On Error Resume Next
  10. Set objShell=CreateObject("Wscript.Shell")
  11. Set objHTML=CreateObject("htmlfile")
  12. ClipboardText=objHTML.ParentWindow.ClipboardData.GetData("text")
  13. set fso=wscript.createobject("scripting.filesystemobject")
  14. set file=fso.opentextfile("TXT.$",8,true)
  15. file.writeline ClipboardText
复制代码
情况:
运行  生成的.exe,跳出错误:
脚本:        D:\桌面\Desktop\TXT.vbs
行:        1
字符:        1
错误:        无效字符
代码:        800A0408
源:         Microsoft VBScript 编译器错误

而   txt.vbs  里面有一个  ?(我估计问题就在这里)


这个问题怎样解决?谢谢
我是小白,希望老师多多帮助

回复 1# yyz219


    打包为RAR自解压文件,不会出现这种情况

就是不知道会不会影响速度?
我是小白,希望老师多多帮助

TOP

这应该是写入时出现错误,导致实际写入到TXT.vbs里的只有一个问号
用RAR自解压文件应该不会影响速度
1

评分人数

https://pc.woozooo.com/mydisk.php

TOP

回复 3# LJY4.0


    写入时出现错误,导致实际写入到TXT.vbs里的只有一个问号——————能够解决这个问题吗?

谢谢
我是小白,希望老师多多帮助

TOP

可能是转换后bat内容格式和现在的不一样了
more +8可能就不适用了
1

评分人数

TOP

回复 5# idwma


    有办法解决吗?谢谢
我是小白,希望老师多多帮助

TOP

参照第8行把前面全改了
  1. ' 2>nul&@echo off
  2. ' 2>nul&start wscript -e:vbs "%~f0"
  3. ' 2>nul&set /p TXT=<TXT.$
  4. ' 2>nul&del TXT.*
  5. ' 2>nul&if defined TXT start ""  "www.baidu.com/s?ie=UTF-8&wd=%TXT%"
  6. ' 2>nul&exit
  7. ' 2>nul&@start wscript -e:vbs "%~f0"&goto :eof
  8. On Error Resume Next
  9. Set objShell=CreateObject("Wscript.Shell")
  10. Set objHTML=CreateObject("htmlfile")
  11. ClipboardText=objHTML.ParentWindow.ClipboardData.GetData("text")
  12. set fso=wscript.createobject("scripting.filesystemobject")
  13. set file=fso.opentextfile("TXT.$",8,true)
  14. file.writeline ClipboardText
复制代码
1

评分人数

    • yyz219: 我试一试先,辛苦了,非常感谢技术 + 1

TOP

回复 7# idwma


    我试一试先,辛苦了,非常感谢
我是小白,希望老师多多帮助

TOP

回复 7# idwma

脚本:        D:\桌面\Desktop\000.exe
行:        1
字符:        1
错误:        类型不匹配: 'MZP'
代码:        800A000D
源:         Microsoft VBScript 运行时错误
我是小白,希望老师多多帮助

TOP

回复 9# yyz219


    不会了

TOP

楼主不会用bat2exe啊;嵌入文件不是这样用的..
把vbs 手动保存到TXT.vbs中,内容:
  1. On Error Resume Next
  2. Set objShell=CreateObject("Wscript.Shell")
  3. Set objHTML=CreateObject("htmlfile")
  4. ClipboardText=objHTML.ParentWindow.ClipboardData.GetData("text")
  5. set fso=wscript.createobject("scripting.filesystemobject")
  6. set file=fso.opentextfile("TXT.$",8,true)
  7. file.writeline ClipboardText
复制代码
然后把TXT.vbs嵌入
嵌入释放到当前目录
而批处理要改成
  1. @echo off
  2. TXT.vbs
  3. set /p TXT=<TXT.$
  4. del TXT.*
  5. if defined TXT start ""  "https://www.baidu.com/s?ie=UTF-8&wd=%TXT%"
  6. exit
复制代码
1

评分人数

微信:flashercs
QQ:49908356

TOP

回复 11# flashercs


    我试一试 谢谢
我是小白,希望老师多多帮助

TOP

回复 11# flashercs


    可行(虽然看不懂),非常感谢
我是小白,希望老师多多帮助

TOP

返回列表