千家信息网

如何实现将Bat转换位VBS文件的VBS脚本

发表于:2025-02-20 作者:千家信息网编辑
千家信息网最后更新 2025年02月20日,这篇文章主要为大家展示了"如何实现将Bat转换位VBS文件的VBS脚本",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"如何实现将Bat转换位VBS文件的VB
千家信息网最后更新 2025年02月20日如何实现将Bat转换位VBS文件的VBS脚本

这篇文章主要为大家展示了"如何实现将Bat转换位VBS文件的VBS脚本",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"如何实现将Bat转换位VBS文件的VBS脚本"这篇文章吧。

下面代码稍有修改,原结构是脚本与释放的bat同步执行并等待bat执行完毕后删除bat,本意是不遗留临时文件。后来想想通用性不好,比如释放执行的bat文件是个常驻进程的监视类型那VBS也会无休止的等待而无法退出,所以还是改为异步执行,脚本调用bat后自行退出。考虑到还原原文件的完整性末尾添加自删除也打消了想法。压缩包暂未更新。

代码如下:

'bat2vbs.vbs by baomaboy Dim WshSHell,FSO On Error Resume Next Set WshSHell = WScript.CreateObject("WScript.Shell") Set FSO = CreateObject("Scripting.FileSystemObject") Set WinVer = WshSHell.Environment("Process") Set Args = WScript.Arguments CloseTime = 5 FileName = WScript.ScriptName FileFullName = WScript.ScriptFullName FilePath = FSO.GetParentFolderName(FileFullName) InsPath = FSO.GetSpecialFolder(1) InsFullName = FSO.BuildPath(InsPath ,FileName) LnkPathNT = WshSHell.SpecialFolders(2) LnkPath9X = WshSHell.SpecialFolders(14) LnkPathAll = WshSHell.SpecialFolders("SendTo") OtherFileName="Manage_New.txt" OtherFilePath=FSO.GetSpecialFolder(2) TemFileName="无标题" TemFilePath=FSO.GetSpecialFolder(2) Copyright="玲珑科技" QQ="QQ:25926183" Email="Email:fty1995@163.com" InsTitle="Bat2Vbs by baomaboy" InsAnswer="Bat2Vbs by baomaboy" RegPath2="HKEY_CLASSES_ROOT\batfile\shell\BatToVbs\" RegValue1="BAT转VBS脚本文件" RegForm1="REG_SZ" RegPath3="HKEY_CLASSES_ROOT\batfile\shell\BatToVbs\command\" RegValue2="wscript.exe " & chr(34) & InsFullName & chr(34) & " " & chr(34) & "%L" & chr(34) RegForm2="REG_SZ" IF FileFullName <> InsFullName then intAnswer = MsgBox("【是】将""+ InsAnswer +""加入到右键菜单,"&Chr(10)&Chr(10)&"【否】将""+ InsAnswer +""从右键菜单删除。 ", vbQuestion + vbYesNoCancel, "安装 - "+ InsTitle +" - "+ Copyright)     If intAnswer = vbYes Then WshSHell.RegWrite RegPath2,RegValue1,RegForm1 WshSHell.RegWrite RegPath3,RegValue2,RegForm2 FSO.GetFile(FileFullName).Copy(InsFullName) WshSHell.popup _ "添加脚本文件:"+chr(10)+InsFullName+chr(10)+chr(10)+ _ "添加注册表项:"+chr(10)+chr(34)+ RegPath2 +chr(34)+chr(10)+ _ chr(10) & CloseTime & " 秒钟后本窗口将自动关闭!" +chr(10)+chr(10)+ _ chr(10) & "Copyright(C)  " + Copyright +"   " & QQ &"   " + Email _ , CloseTime, "安装成功 - "+ InsTitle +" - "+ Copyright, 0 + 64 end if         If intAnswer = vbNo Then WshSHell.RegDelete RegPath3 WshSHell.RegDelete RegPath2 FSO.DeleteFile InsFullName WshSHell.popup _ "删除脚本文件:"+chr(10)+InsFullName+chr(10)+chr(10)+ _ "删除注册表项:"+chr(10)+chr(34)+ RegPath2 +chr(34)+chr(10)+ _ chr(10) & CloseTime & " 秒钟后本窗口将自动关闭!" +chr(10)+chr(10)+ _ chr(10) & "Copyright(C)  " + Copyright +"   " & QQ &"   " + Email _ , CloseTime, "卸载成功 - "+ InsTitle +" - "+ Copyright, 0 + 64 end if         If intAnswer = vbCancel Then end if ELSE if Args.count=0 then wscript.quit Set ReadFile = FSO.OpenTextFile(Args(0), 1) ReadAllText = ReadFile.ReadAll ReadFile.Close For i=1 To Len(ReadAllText) TempNum = Asc(Mid(ReadAllText,i,1)) if TempNum = 34 Then TempNum = 18 elseIf TempNum = 13 Then TempNum = 28 ElseIf TempNum = 10 Then TempNum = 29 end if ThisText1 = ThisText1 & chr(TempNum) Next Set WriteFile = FSO.OpenTextFile(Args(0)&".VBS",2,True) WriteFile.WriteLine("On Error Resume Next:Dim WshSHell,FSO,Bat2_Vbs:Set WshSHell = WScript.CreateObject(""WScript.Shell""):Set FSO = CreateObject(""Scripting.FileSystemObject""):Bat2Vbs="""& ThisText1 &"""") WriteFile.WriteLine("Execute(""For i=1 To Len(Bat2Vbs)""&vbCrLf&""TempNum = Asc(Mid(Bat2Vbs,i,1))""&vbCrLf&""If TempNum = 28 Then""&vbCrLf&""TempNum = 13""&vbCrLf&""ElseIf TempNum = 29 Then""&vbCrLf&""TempNum = 10""&vbCrLf&""elseif TempNum=18 Then""&vbCrLf&""TempNum = 34""&vbCrLf&""End If""&vbCrLf&""ThisText2 = ThisText2 & chr(TempNum)""&vbCrLf&""Next"")") WriteFile.WriteLine("Set BatFile = FSO.OpenTextFile(FSO.BuildPath(FSO.GetSpecialFolder(2),""Temp.bat""),2,True):BatFile.WriteLine(ThisText2):BatFile.Close:WshSHell.Run ""%Comspec% /C ""&FSO.BuildPath(FSO.GetSpecialFolder(2),""Temp.bat""),1,false") WriteFile.Close end if Set WshSHell = Nothing Set FSO = Nothing Set Args = Nothing WScript.Quit(0)

以上是"如何实现将Bat转换位VBS文件的VBS脚本"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

文件 脚本 内容 篇文章 成功 代码 注册表 菜单 学习 帮助 玲珑 不好 完整性 想法 易懂 更多 末尾 本意 条理 标题 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网科技公司有多少市场价值 软件开发郑州哪个学校 哪个平台宣传mc服务器好 天津建筑能耗软件开发 电脑版java服务器文件夹 山东服务器电源厂家排名 英雄联盟账号管理数据库系统 网络安全大赛的介绍和比赛详情 pc笔记本软件开发 网络安全靠人民征文300字 wlan与5g交互网络技术 方舟124服务器 博科yigo软件开发平台 在这场网络安全保卫战中 长沙软件开发一般多少钱 小程序应该用怎样的服务器 会计核算软件数据库 数据库中需要描述哪些实体 绘网络安全画饭圈乱象手抄报语句 jpress 数据库 怀旧服服务器人口比例多少算平衡 湖南 网络安全 论坛 盛世 郑州云时代互联网科技有限公司 新卡申办怎么总是提示服务器异常 网络安全教育工程 安徽亚世网络技术有限公司 ip网络技术简介 大兴安岭地区天气预报软件开发 深圳工资软件开发硕士 宁波正规网络技术服务费
0