|
发表于 2011-3-4 14:12:26
|
显示全部楼层
翻译:
1.开始菜单调用:
$oShell = ObjCreate('Shell.Application')
$oShell.FileRun
2.ShellExecute本质就是:
$oShell = ObjCreate('Shell.Application')
$oShell.ShellExecute(路径或文件或网页[,参数][...])
3.所以ShellExecute本质就是调用开始菜单的运行API函数
4.为什么不一致?
因为在开始菜单的运行时,系统先做判断:
(1)如果是%SystemRoot%系统变量,先转换为值,再$oShell.ShellExecute(Value)
(2)如果是control hotplug.dll,系统先会分离为参数再$oShell.ShellExecute(program,para)
5.所以要直接调用开始菜单的运行要想一致,你也需要做调用前的这些判断,除非你用的是:
$oShell = ObjCreate('Shell.Application')
$oShell.FileRun
用ControlSetText送入要执行的命令,再ControlClick(,,"确定按钮") |
|