WScript.Shell 与 Shell.Application 的不同
本文主要对比,VBScript 中 CreateObject("WScript.Shell") 和 CreateObject("Shell.Application") 之间,有什么不同。
代码上的不同:
代码如下:
'第一种方法
Set oShell = CreateObject("WScript.Shell")
oShell.Run "xxxx.exe"
'第二种方法
Set oShell = CreateObject("shell.application")
oShell..ShellExecute "xxxx.exe", "", "", "", 1
这里主要记录下,两种看似类似的方法,到底有什么不同:
- 首先它俩,来自于完全不同的两个对象(Object),或者说两个不同的 COM Object,也就是说来自于两个不同的 DLL 文件
- 第一种方法下,使用的 Object,源自于 wshom.ocx 文件
- Wscript.shell 是 Wshshell 的 ProID (Programmatic IDentifier)
- 而,这个 Wshshell 对象,则存放在 wshom.ocx 文件中
- 第二种方法下,使用的 Object,源自于 shell32.dll 文件
- 第一种方法下,使用的 Object,源自于 wshom.ocx 文件
- 再者,这两个不同 Object,是用不同的途径,去完成不同的任务
使用上的不同:
这里,就以打开Chrome浏览器的方法,为实例,来说明使用上的不同!
url = "www.google.com"
'第一种方法
set oShell = WScript.CreateObject("WScript.Shell")
oShell.run "chrome.exe"
WScript.sleep 1000
oShell.sendkeys url
WScript.sleep 1000
oShell.sendkeys "{ENTER}"
'第二种方法
Set oShell = CreateObject("shell.application")
oShell.ShellExecute "chrome", url,"","",1
'如果Chrome是默认浏览器的话
set oShell = CreateObject("WScript.Shell")
oShell.run url
所以,从这个实例中,可以看出 oShell.ShellExecute 方法,更加灵活。
参考阅读:
- wshom.ocx_百度百科
- WScript.Shell vs Shell.Application
- Diff between wscript.shell and shell.application
- Shell.ShellExecute method | Microsoft Docs
- shell32.dll Windows process - What is it?
- Opening browser on a variable page using vbscript - Stack Overflow
WScript.Shell 与 Shell.Application 的不同的更多相关文章
- 转:shell 经典, shell 十三问
原文链接:http://blog.csdn.net/freexploit/article/details/626660 我在 CU 的日子并不长,有幸在 shell 版上与大家结缘.除了跟众前辈学 ...
- [翻译].NET Shell Extensions - Shell Context Menus---.net 外壳扩展-右键菜单
我自己的前言说明: 本文原作者为 Dave Kerr,原文链接为.NET Shell Extensions - Shell Context Menus:,我是在为了完成最新需求的时候查询资料的时 ...
- [拾 得] 一枚迷人的贝壳 SHELL / Linux | shell 脚本初步入门
坚持知识分享,该文章由Alopex编著, 转载请注明源地址: http://www.cnblogs.com/alopex/ 索引: 什么是shell shell的分类 shell脚本的执行方式 ...
- CMD & Git Shell & Bash Shell
CMD & Git Shell & Bash Shell https://mvdan.cc/sh/cmd/shfmt PC
- java.lang.NullPointerException at java.lang.ProcessBuilder.start(Unknown Source) at org.apache.hadoop.util.Shell.runCommand(Shell.java:482)
1:问题出现的原因,部署好的hadoop-2.6.4进行window10操作hadoop api出现的错误,具体错误是我向hdfs上传文件,还好点,之前解决过,这里不叙述,这里说一下从hdfs下载文件 ...
- Linux Shell常用shell命令
Linux Shell常用shell命令 一.文件.目录操作命令 1.ls命令 功能:显示文件和目录的信息 ls 以默认方式显示当前目录文件列表 ls -a 显示所有文件包括隐藏文件 ls -l 显示 ...
- 初识Shell与Shell脚本
初识Shell Shell 是一个用 C 语言编写的程序,Shell 既是一种命令语言,又是一种程序设计语言. Shell 是指一种应用程序,这个应用程序提供了一个界面,用户通过这个界面访问操作系统内 ...
- Shell - 简明Shell入门01 - 第一个脚本(HelloShell)
示例脚本及注释 #!/bin/bash echo "hello shell!" # 打印字符串"hello shell!" echo "Date: & ...
- Shell记录-Shell脚本基础(一)
Shell 注释: 你可以把注释,在你的脚本如下: #!/bin/bash # Author : Zara Ali # Copyright (c) Tutorialsyiibai.com # Scri ...
随机推荐
- Day 1 模拟
1. P1088 火星人 利用STL中的next_permutation();函数求一种排列的下一种排列,循环m次即为答案.(STL大法好~~C++是世界上最好的语言~~逃 #include < ...
- 算法入门——二分查找,旅行商问题,大O表示法
一. 算法入门 博主在市面上发现了很多,很多有关书算法的书籍,但是真正能够让初学者易懂的算法书籍,只是一点点,以下我讲以 Aditya Bhargava写的一本关于算法的入门书籍,为参考,这本书非常的 ...
- ES6 常用知识点总结
ES6常用知识总结 之前总结了es5中js的一些知识点.这段时间看了石川blue老师讲解的es6课程,结合阮一峰老师的es6教程,随手做了一些笔记和总结分享给大家.内容还是es6主要的知识点,基本没有 ...
- 进阶之路 | 奇妙的Thread之旅
前言 本文已经收录到我的Github个人博客,欢迎大佬们光临寒舍: 我的GIthub博客 需要已经具备的知识: Thread的基本概念及使用 AsyncTask的基本概念及使用 学习清单: 线程概述 ...
- 基于springcloud搭建项目-Ribbon篇(三)
这篇文章主要是介绍一下ribbon的用法,我们都知道ribbon是负载均衡,但是却不知道他是怎么样的负载均衡,怎么用,能干嘛? ● 其实,简单的说,Spring Cloud Ribbon是基于Netf ...
- seo搜索优化教程11-seo搜索优化关键词策略
为了使大家更方便的了解及学习网络营销推广.seo搜索优化,星辉科技强势推出seo搜索优化教程.此为seo教程第11课 关键词在seo搜索优化中有着重要的地位,本节主要讲解seo搜索优化中关键词优化的相 ...
- centos7下pymysql安装
1. 安装 添加mysql yum respository 添加 MySQL Yum Repository 到你的系统 repository 列表中,执行 wget http://repo.mysql ...
- 关于PHP命名空间的讨论
什么是命名空间? 根据php.net官方翻译文档描述,命名空间是这样定义的: 什么是命名空间?从广义上来说,命名空间是一种封装事物的方法. 在PHP中,命名空间用来解决在编写类库或应用程序时创建可重用 ...
- python学习的新篇章--面向对象
面向对象的学习笔记 关键要素: 类:class 用来描述具有相同的属性和方法的对象的集合,它定义了该集合中每个对象所共有的属性和方法. 数据成员: 类的不同属性数据 对象: 类的一个实例 ...
- CSS 文本截断方案
单行截断 .ellipsis { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } 此方法兼容到ie6过.不过只能单行 ...