世界第一等-----无须安装wsh而执行vbs
作者:李均宇 2002.12.23 email:e271828@163.net
为了用代码创建快捷方式,可以用api,不过这实在太繁了.有无一种更方便的方式呢?我在浏览win98的系统文件夹时,在c:\windows\sample下找到了shortcut.vbs,这个文件果然实现了这个功能.但是这个vbs要先装上wsh才能运行,而且更怪的事是若果再装上超级解霸2000,那么会把vbs文件和wsh的关联丢失,造成vbs无法运行.如果在程序中想运行vbs,就成了不那么顺利的事了.我查找了接近一百张光碟,结果发现介绍wsh的资料少之又少.
为此我用了我以前自已开发的"影子目录及其浏览器"来辅助了.我先在未装wsh之前用"影子目录及其浏览器"来生成一个a文件,然后装上wsh,再用"影子目录及其浏览器"来生成一个b文件,然后比较这两个文件的不同,发现了多出几个分布在不同文件夹下的如下几个文件:cscript.exe,scrrun.dll,wscript.exe,wsh.inf,wshext.dll,wshom.ocx,wshtcp.vxd
我把它们copy到同一个"d:\重装系统省时省电省钱!!!\开始菜单和发送到\wsh\"文件夹下.为此我又作了一个reg.bat如下:@echo off
c:\windows\system\regsvr32.exe /s d:\重装系统省时省电省钱!!!\开始菜单和发送到\wsh\wshom.ocx
c:\windows\system\regsvr32.exe /s d:\重装系统省时省电省钱!!!\开始菜单和发送到\wsh\wshext.dll
c:\windows\system\regsvr32.exe /s d:\重装系统省时省电省钱!!!\开始菜单和发送到\wsh\wshtcp.vxd
c:\windows\system\regsvr32.exe /s d:\重装系统省时省电省钱!!!\开始菜单和发送到\wsh\scrrun.dll
在装wsh之前和之后我都生成一个reg文件,分别是no_wsh.reg和yes_wsh.reg,于是我又用了一个我以前自已开发的"注册表分析器"来辅助了.我把前后两次的reg分别输入"注册表分析器",发现多出下面这些注册表项,于是我把它作成一个win98ok.reg文件如下:
regedit4
[hkey_local_machine\software\microsoft\windows\currentversion\setup\optionalcomponents\wsh]
"installed"="1"
[hkey_local_machine\software\microsoft\windows\currentversion\shell extensions\approved]
"{60254ca5-953b-11cf-8c96-00aa00b8708c}"="windows scripting host 的外壳扩展"
[hkey_local_machine\software\microsoft\windows scripting host\settings]
"displaylogo"="1"
[hkey_local_machine\software\classes\clsid\{ee09b103-97e0-11cf-978f-00a02463e06f}\inprocserver32]
@="c:\\windows\\system\\scrrun.dll"
"threadingmodel"="both"
[hkey_local_machine\software\classes\clsid\{ee09b103-97e0-11cf-978f-00a02463e06f}\implemented categories\{7dd95801-9882-11cf-9fa9-00aa006c42c4}]
@=""
[hkey_local_machine\software\classes\clsid\{0d43fe01-f093-11cf-8940-00a0c9054228}]
@="filesystem object"
[hkey_local_machine\software\classes\clsid\{0d43fe01-f093-11cf-8940-00a0c9054228}\inprocserver32]
@="c:\\windows\\system\\scrrun.dll"
[hkey_local_machine\software\classes\clsid\{f935dc22-1cf0-11d0-adb9-00c04fd58a0b}]
@="windows scripting host 的外壳对象"
[hkey_local_machine\software\classes\clsid\{f935dc22-1cf0-11d0-adb9-00c04fd58a0b}\inprocserver32]
@="c:\\windows\\system\\wshom.ocx"
[hkey_local_machine\software\classes\clsid\{f935dc26-1cf0-11d0-adb9-00c04fd58a0b}]
@="windows scripting host 网络对象"
[hkey_local_machine\software\classes\clsid\{f935dc26-1cf0-11d0-adb9-00c04fd58a0b}\inprocserver32]
@="c:\\windows\\system\\wshom.ocx"
[hkey_local_machine\software\classes\clsid\{60254ca5-953b-11cf-8c96-00aa00b8708c}]
@="windows scripting host 的外壳扩展"
[hkey_local_machine\software\classes\clsid\{60254ca5-953b-11cf-8c96-00aa00b8708c}\inprocserver32]
@="c:\\windows\\system\\wshext.dll"
[hkey_local_machine\software\classes\typelib\{f935dc20-1cf0-11d0-adb9-00c04fd58a0b}\1.0]
@="microsoft windows scripting host 对象型号 (v1.0)"
[hkey_local_machine\software\classes\typelib\{f935dc20-1cf0-11d0-adb9-00c04fd58a0b}\1.0\0\win32]
@="c:\\windows\\system\\wshom.ocx"
[hkey_local_machine\software\classes\typelib\{f935dc20-1cf0-11d0-adb9-00c04fd58a0b}\1.0\helpdir]
@="c:\\windows\\help"
[hkey_local_machine\software\classes\typelib\{420b2830-e718-11cf-893d-00a0c9054228}\1.0\0\win32]
@="c:\\windows\\system\\scrrun.dll"
[hkey_local_machine\software\classes\typelib\{420b2830-e718-11cf-893d-00a0c9054228}\1.0\helpdir]
@="c:\\windows\\system"
[hkey_local_machine\software\classes\wscript.shell]
@="windows scripting host 的外壳对象"
[hkey_local_machine\software\classes\wscript.shell.1]
@="windows scripting host 的外壳对象"
[hkey_local_machine\software\classes\wscript.shell.1\curver]
@="wscript.shell.1"
[hkey_local_machine\software\classes\wscript.network]
@="windows scripting host 网络对象"
[hkey_local_machine\software\classes\wscript.network.1]
@="windows scripting host 网络对象"
[hkey_local_machine\software\classes\wscript.network.1\curver]
@="wscript.network.1"
[hkey_local_machine\software\classes\scripting.filesystemobject]
@="scripting.filesystemobject"
[hkey_local_machine\software\classes\.js]
@="jsfile"
[hkey_local_machine\software\classes\jsfile]
@="jscript 脚本文件"
[hkey_local_machine\software\classes\jsfile\defaulticon]
"installed"="1"
[hkey_local_machine\software\microsoft\windows\currentversion\shell extensions\approved]
"{60254ca5-953b-11cf-8c96-00aa00b8708c}"="windows scripting host 的外壳扩展"
[hkey_local_machine\software\microsoft\windows scripting host\settings]
"displaylogo"="1"
[hkey_local_machine\software\classes\clsid\{ee09b103-97e0-11cf-978f-00a02463e06f}\inprocserver32]
@="c:\\windows\\system\\scrrun.dll"
"threadingmodel"="both"
[hkey_local_machine\software\classes\clsid\{ee09b103-97e0-11cf-978f-00a02463e06f}\implemented categories\{7dd95801-9882-11cf-9fa9-00aa006c42c4}]
@=""
[hkey_local_machine\software\classes\clsid\{0d43fe01-f093-11cf-8940-00a0c9054228}]
@="filesystem object"
[hkey_local_machine\software\classes\clsid\{0d43fe01-f093-11cf-8940-00a0c9054228}\inprocserver32]
@="c:\\windows\\system\\scrrun.dll"
[hkey_local_machine\software\classes\clsid\{f935dc22-1cf0-11d0-adb9-00c04fd58a0b}]
@="windows scripting host 的外壳对象"
[hkey_local_machine\software\classes\clsid\{f935dc22-1cf0-11d0-adb9-00c04fd58a0b}\inprocserver32]
@="c:\\windows\\system\\wshom.ocx"
[hkey_local_machine\software\classes\clsid\{f935dc26-1cf0-11d0-adb9-00c04fd58a0b}]
@="windows scripting host 网络对象"
[hkey_local_machine\software\classes\clsid\{f935dc26-1cf0-11d0-adb9-00c04fd58a0b}\inprocserver32]
@="c:\\windows\\system\\wshom.ocx"
[hkey_local_machine\software\classes\clsid\{60254ca5-953b-11cf-8c96-00aa00b8708c}]
@="windows scripting host 的外壳扩展"
[hkey_local_machine\software\classes\clsid\{60254ca5-953b-11cf-8c96-00aa00b8708c}\inprocserver32]
@="c:\\windows\\system\\wshext.dll"
[hkey_local_machine\software\classes\typelib\{f935dc20-1cf0-11d0-adb9-00c04fd58a0b}\1.0]
@="microsoft windows scripting host 对象型号 (v1.0)"
[hkey_local_machine\software\classes\typelib\{f935dc20-1cf0-11d0-adb9-00c04fd58a0b}\1.0\0\win32]
@="c:\\windows\\system\\wshom.ocx"
[hkey_local_machine\software\classes\typelib\{f935dc20-1cf0-11d0-adb9-00c04fd58a0b}\1.0\helpdir]
@="c:\\windows\\help"
[hkey_local_machine\software\classes\typelib\{420b2830-e718-11cf-893d-00a0c9054228}\1.0\0\win32]
@="c:\\windows\\system\\scrrun.dll"
[hkey_local_machine\software\classes\typelib\{420b2830-e718-11cf-893d-00a0c9054228}\1.0\helpdir]
@="c:\\windows\\system"
[hkey_local_machine\software\classes\wscript.shell]
@="windows scripting host 的外壳对象"
[hkey_local_machine\software\classes\wscript.shell.1]
@="windows scripting host 的外壳对象"
[hkey_local_machine\software\classes\wscript.shell.1\curver]
@="wscript.shell.1"
[hkey_local_machine\software\classes\wscript.network]
@="windows scripting host 网络对象"
[hkey_local_machine\software\classes\wscript.network.1]
@="windows scripting host 网络对象"
[hkey_local_machine\software\classes\wscript.network.1\curver]
@="wscript.network.1"
[hkey_local_machine\software\classes\scripting.filesystemobject]
@="scripting.filesystemobject"
[hkey_local_machine\software\classes\.js]
@="jsfile"
[hkey_local_machine\software\classes\jsfile]
@="jscript 脚本文件"
[hkey_local_machine\software\classes\jsfile\defaulticon]
本文关键:WSH,VBS,李均宇