最近在脚本中通过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. SpringBoot整合Thymeleaf表单更新操作

    对于表单值回显并更新的逻辑相比大家都已经很熟悉了, 但是我们操作Thymeleaf的话这里就会有一点小坑了, 在要回显值的表单的所有字段上,我们都要加上 th:field,才可以完成回显值更新 或者这 ...

  2. js获取屏幕以及元素宽高的方法

    一.window相关 网页正文部分上:window.screenTop 网页正文部分左:window.screenLeft 屏幕分辨率的高:window.screen.height 屏幕分辨率的宽:w ...

  3. Java - java概述

    简介: JAVA是一门面向对象的编程语言 1995有sun公司发布 java程序执行流程: xxxjava源文件, 经过编译器编译 产生字节码文件 字节码交给解释器 解释成当前平台的本地机器指令 名词 ...

  4. 编译原理之不懂就问-First集

    老师PPT: 这条语言实在是..通俗易懂

  5. Django源码安装xadmin报错Apps aren't loaded yet.

    环境:python2.7, django1.9 1.报错django.core.exceptions.AppRegistryNotReady:Apps aren't loaded yet.如下图所示: ...

  6. mssql sqlserver text、image字段类型无法使用DISTINCT的处理方法分享

    转自: http://www.maomao365.com/?p=9775  摘要: 下文简述sqlserver数据库中 text image类型无法使用distinct的处理方法分享 实验环境:sql ...

  7. ssh免密登录配置后,登陆失败问题

    本文转自博主:_Lance 本文转自:https://blog.csdn.net/qq_19648191/article/details/54845440 相关资料http://blog.csdn.n ...

  8. Linux下查看哪些进程占用的CPU、内存资源

    1.CPU占用最多的前10个进程: ps auxw|head -1;ps auxw|sort -rn -k3|head -10 2.内存消耗最多的前10个进程 ps auxw|head -1;ps a ...

  9. acwing 76. 和为S的连续正数序列

    地址 https://www.acwing.com/problem/content/description/72/ 输入一个正数s,打印出所有和为s的连续正数序列(至少含有两个数). 例如输入15,由 ...

  10. 解决:Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend), is another process using it?

    简单粗暴法 删除锁 $ sudo rm /var/cache/apt/archives/lock $ sudo rm /var/lib/dpkg/lock 如果还不行,重启虚拟机 $ reboot