最近在脚本中通过WScript.Shell执行命令行,实现IE打开Chrome的功能。

JS代码如下:

 var singleurl = window.location.href;
var isChrome = navigator.userAgent.indexOf("Chrome") > -1;
if(!isChrome)
{
var objShell= new ActiveXObject("WScript.Shell");
objShell.Run('cmd.exe /c start chrome "'+singleurl+'"' ,1,true);
}

由于客户环境中 Chrome是绿色版的,把Chrome.exe的绝对路径放入到环境变量path后,在windows的CMD窗口中可以通过start chrome打开,但是在JS中运行如上代码始终提示“windows找不到文件chrome,请确定文件名是否正确”。搜索了很长时间,终于找到解决方案,需要在注册表HKEY_LOCAL_MACHINE \ Software \ Microsoft \ Windows \ CurrentVersion \ App Paths 中把chrome的路径增加上,在JS中才可以打开。

CMD中 Start命令打开可执行文件的搜索路径范围如下:

    1. 当前的工作目录。

    2. 环境变量 PATH内的所有目录路径。

      在命令提示符窗口,键入set path即可查看PATH中的所有目录以及PATHEXT中的所有文件扩展名。

      请注意,每个用户帐户都有自己的PATH。因此,系统帐户的PATH通常与标准用户帐户的PATH不同。这对于使用命令runas运行批处理文件或使用其他帐户运行任务调度程序非常重要。

    3. 在注册表中查看

      HKEY_CURRENT_USER \ Software \ Microsoft \ Windows \ CurrentVersion \ App Paths 
      HKEY_CURRENT_USER \ Software \ Wow6432Node \ Microsoft \ Windows \ CurrentVersion \ App Paths 
      HKEY_LOCAL_MACHINE \ Software \ Microsoft \ Windows \ CurrentVersion \ App Paths 
      HKEY_LOCAL_MACHINE \ Software \ Wow6432Node \ Microsoft \ Windows \ CurrentVersion \应用路径

以上内容参考资料:http://www.imooc.com/wenda/detail/586407

cmd start命令启动文件的路径的更多相关文章

  1. tomcat设置好环境变量,依然无法通过cmd startup命令启动

    Windows环境下JDK安装与环境变量配置详细的图文教程 https://www.cnblogs.com/liuhongfeng/p/4177568.html   Windows环境下maven 环 ...

  2. cmd中执行jar文件命令(待参数)

    cmd中执行jar文件命令(待参数) 1,jar文件路径:F:\products 2,cmd命令: --两个日期参数(空格隔开) java -jar F:\products\analysis.jar ...

  3. 如何获取启动文件路径 GetModuleFileName

    如何获取启动文件路径 GetModuleFileName CString GetExeDirPath() { }; CString strExeDirPath; GetModuleFileName(N ...

  4. Windows cmd 将命令(/指令)写到一个文件里,直接运行这个文件。提高工作效率

    Windows cmd 批处理(cmd/bat)文件的简单使用介绍 前言 如果你想我一样,要每天都需要在cmd上,用键盘去敲击相同的命令,时间一长,你就觉得很无聊.有没有什么比较高效的方法,让我们不用 ...

  5. 将文件从已Root Android手机中copy出来的几个cmd窗口命令

    将文件从已Root Android手机中copy出来的几个cmd窗口命令: 以shell身份登录adbadb shell进入adb后切换至root用户su更改文件的所属chown shell *更改文 ...

  6. pip freeze > requirements.txt` 命令输出文件中出现文件路径而非版本号

    pip freeze > requirements.txt 命令输出文件中出现文件路径而非版本号 解决办法: pip list --format=freeze > requirements ...

  7. 通过cmd命令启动appium server,appium server安装过程

    电脑上已安装了appium desktop版,想在移动端自动化的过程中,通过脚本启动appium server,环境准备: 1.确保电脑安装了node.js,目前用的是node12 2.安装JDK,且 ...

  8. C# cmd执行命令

    CMD命令执行 ///<summary>         /// cmd命令执行,在cmd上可以执行的语句,直接传到这里,调用grads画图实例如下:         ///  Cmd(& ...

  9. 无法从命令行或调试器启动服务,必须首先安装Windows服务(使用installutil.exe),然后用ServerExplorer、Windows服务器管理工具或NET START命令启动它

    无法从命令行或调试器启动服务,必须首先安装Windows服务(使用installutil.exe),然后用ServerExplorer.Windows服务器管理工具或NET START命令启动它 1. ...

随机推荐

  1. 立 Flag

    行动目标 立Flag时间 计划开始时间 开始时间 行动寄语 通关目标 打卡1 打卡2 打卡3 打卡4 打卡5 打卡6 C# 7.0 核心技术指南 2019-11-1 1号 1号 打好C#基础 看完.实 ...

  2. Python爬虫实战教程:爬取网易新闻

    前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者: Amauri PS:如有需要Python学习资料的小伙伴可以加点击 ...

  3. 测试环境部署之填坑记录-Expected one result (or null) to be returned by selectOne(), but found: 2

    最近在部署性能测试环境的时候,环境 部署好以后,部分功能出现接口查询异常,问题现象: 拿到错误,肯定要先判断是前端还是后端代码的问题,最简单的方式是抓包查看: 以上是报错页面捕获的接口报错,很明显的接 ...

  4. 用html,CSS 写一个静态的博客网页

    <!doctype html> <html> <br/><br/><br/> <head> <meta http-equi ...

  5. 应用InstallShield 2015打包软件打包C#程序

    大家都明白,程序员写出的程序与用户直接使用的程序之间还有一个简单的环节,就是打包.今天就简单介绍下用InstallShield 2015打包工具进行程序的打包, 有兴趣的可以看看! 首先前面安装打包工 ...

  6. numpy中array和matrix的区别

    两者相似但执行相同的运算可能得到不同的结果 显然,array只能通过dot()实现"矩阵乘法",array的"*"运算实现的是两个纬度相同的"矩阵&q ...

  7. BIM工程信息管理新系统- 系统管理模块

    系统管理模块 1.实体类 public partial class T_Role { public string RoleId { get; set; } public string RoleName ...

  8. mysql使用——sql实现随机取一条数据

    最近在做接口测试的时候,测试数据是从数据库查询的,但是当需要并发多次去调用接口时,如果sql只是单纯的进行了limit取值,那并发的时候肯定会每条数据都一样. 因此,研究了下sql随机取一条数据的写法 ...

  9. airtest自动化测试工具的环境安装与使用

    AirtestIDE的下载与安装 AirtestIDE已经帮你集成了所有的环境,自带录制脚本栏,自动生成脚本,自带编辑器还自带模拟器. 下载地址是Airtest的官网:http://airtest.n ...

  10. MySQL的基础架构

    TCP/IP看不下去了,我觉得还是从应用层入手,接下来2个月我将主要学习数据库相关和算法知识,网络我一直不熟,所以看起专业书籍很吃力,可以说是浪费时间,这次数据库学习目标是先将方向纠正一下,然后其中的 ...