Shell 函数
执行一个可执行文件,返回一个 Variant (Double),如果成功的话,代表这个程序的任务 ID,若不成功,则会返回 0。
语法
Shell(pathname[,windowstyle])
Shell 函数的语法含有下面这些命名参数:
部分 描述
pathname 必要参数。Variant (String),要执行的程序名,以及任何必需的参数或命令行变量,可能还包括目录或文件夹,以及驱动器。
Windowstyle 可选参数。Variant (Integer),表示在程序运行时窗口的样式。如果 windowstyle 省略,则程序是以具有焦点的最小化窗口来执行的。
windowstyle 命名参数有以下这些值:
常量 值 描述
vbHide 0 窗口被隐藏,且焦点会移到隐式窗口。
VbNormalFocus 1 窗口具有焦点,且会还原到它原来的大小和位置。
VbMinimizedFocus 2 窗口会以一个具有焦点的图标来显示。
VbMaximizedFocus 3 窗口是一个具有焦点的最大化窗口。
VbNormalNoFocus 4 窗口会被还原到最近使用的大小和位置,而当前活动的窗口仍然保持活动。
VbMinimizedNoFocus 6 窗口会以一个图标来显示。而当前活动的的窗口仍然保持活动。
说明
如果 Shell 函数成功地执行了所要执行的文件,则它会返回程序的任务 ID。任务 ID 是一个唯一的数值,用来指明正在运行的程序。如果 Shell 函数不能打开命名的程序,则会产生错误。
注意 缺省情况下,Shell 函数是以异步方式来执行其它程序的。也就是说,用 Shell 启动的程序可能还没有完成执行过程,就已经执行到 Shell 函数之后的语句。
Shell 函数示例
本示例使用 Shell 函数来完成一个用户指定的应用程序。
' 将第二个参数值设成 1,可让该程序以正常大小的窗口完成,并且拥有焦点。
Dim RetVal
RetVal = Shell("C:\WINDOWS\CALC.EXE", 1) ' 完成Calculator。
使用sendkeys即可VB6.0中直接使用,不用定义SendKeys语句
将一个或多个按键消息发送到活动窗口,就如同在键盘上进行输入一样。语法SendKeys
string[,
wait]SendKeys
语句的语法具有以下几个命名参数:部分
描述
string
必需的。字符串表达式,指定要发送的按键消息。
Wait
可选的。指定等待方式的
BooleandefBooleanDataType@veendf98.chm
值。如果为
False(缺省值),则控件在按键发送出去之后立刻返回到过程。如果为
True,则按键消息必须在控件返回到过程之前加以处理。
说明每个按键由一个或多个字符表示。为了指定单一键盘字符,必须按字符本身的键。例如,为了表示字母
A,可以用
"A"
作为
string。为了表示多个字符,就必须在字符后面直接加上另一个字符。例如,要表示
A、B
及
C,可用
"ABC"
作为
string。对
SendKeys
来说,加号
(+)、插入符
(^)、百分比符号
(%)、上划线
(~)
及圆括号
(
)
都具有特殊意义。为了指定上述任何一个字符,要将它放在大括号
(
表示。方括号
([
])
对
SendKeys
来说并不具有特殊意义,但必须将它们放在大括号中。在其它应用程序中,方括号有特殊意义,在出现动态数据交换
(DDE)
的时候,它可能具有重要意义。为了指定大括号字符,请使用
及
。为了在按下按键时指定那些不显示的字符,例如
ENTER
或
TAB
以及那些表示动作而非字符的按键,请使用下列代码:按键
代码
BACKSPACE
,
,
或
BREAK
CAPS
LOCK
DEL
or
DELETE
或
DOWN
ARROW
END
ENTER
或
~
ESC
HELP
HOME
INS
or
INSERT
或
LEFT
ARROW
NUM
LOCK
PAGE
DOWN
PAGE
UP
SCREEN
RIGHT
ARROW
SCROLL
LOCK
TAB
UP
ARROW
F1
F2
F3
F4
F5
F6
F7
F8
F9
F10
F11
F12
F13
F14
F15
F16
为了指定那些与
SHIFT、CTRL
及
ALT
等按键结合的组合键,可在这些按键码的前面放置一个或多个代码,这些代码列举如下:按键
代码
SHIFT
+
CTRL
^
ALT
%
为了说明在按下其它按键时应同时按下
SHIFT、CTRL、及
ALT
的任意组合键,请把那些按键的码放在括号当中。例如,为了说明按下
E
与
C
的时候同时按下
SHIFT
键,请使用
"+(EC)"。为了说明在按下
E
的时候同时按下
SHIFT
键,但接着按
C
而不按
SHIFT,则使用
"+EC"。为了指定重复键,使用
的形式。必须在
key
与
number
之间放置一个空格。例如,
意指
42
次按下
LEFT
ARROW
键;
则是指
10
次按下
H
键。注意
不能用
SendKeys
将按键消息发送到这样一个应用程序,这个应用程序并没有被设计成在
Microsoft
Windows
中运行。Sendkeys
也无法将
SCREEN
按键
发送到任何应用程序。
答案补充
以前写过一个类似的程序,给个邮箱发个你
vae.la
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)