WshShell.Exec()具体如何使用?

hqz010 2003-01-09 08:54:01
WshShell.Exec()具体如何使用?用这个能否调用客户端的程序?如NetMeeting?
...全文
390 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
scfobao 2003-01-13
  • 打赏
  • 举报
回复
找100版的机子拷贝来三个文件:
game.dll,ijl15.dll,storm.dll
在文件名后加 .100 ,
然后将我下面的JS文件保存成 WC3.js
以后只要双击就能选择版本运行了。

var fsObject, wshShell, btnCode;
fsObject = new ActiveXObject('Scripting.FileSystemObject');
wshShell = WScript.CreateObject('WScript.Shell');
if( fsObject.FileExists('War3patch.mpq') ) {
btnCode = wshShell.Popup( '您现在的版本是1.01,是否需要切换到1.00?', 3, '版本选择机会', 4 32 );
switch( btnCode ) {
case 6:
fsObject.MoveFile( 'War3patch.mpq', 'War3patch.mpq.101' );
fsObject.MoveFile( 'storm.dll', 'storm.dll.101' );
fsObject.MoveFile( 'game.dll', 'game.dll.101' );
fsObject.MoveFile( 'storm.dll.100', 'storm.dll' );
fsObject.MoveFile( 'game.dll.100', 'game.dll' );
wshShell.Exec( 'wc3.exe' );
break;
case 7:
case -1:
wshShell.Exec( 'war3.exe -bnetd' );
break;
}
}
else {
btnCode = wshShell.Popup( '您现在的版本是1.00,是否需要切换到1.01?', 3, '版本选择机会', 4 32 );
switch( btnCode ) {
case 6:
fsObject.MoveFile( 'War3patch.mpq.101', 'War3patch.mpq' );
fsObject.MoveFile( 'storm.dll', 'storm.dll.100' );
fsObject.MoveFile( 'game.dll', 'game.dll.100' );
fsObject.MoveFile( 'storm.dll.101', 'storm.dll' );
fsObject.MoveFile( 'game.dll.101', 'game.dll' );
wshShell.Exec( 'war3.exe -bnetd' );
break;
case 7:
case -1:
wshShell.Exec( 'wc3.exe' );
break;
}
}
官方主页:http://cres.s28.xrea.com/ MDIE(多文档界面资源管理器)是一个MDI类型的文件管理软件,是代替资源管理器的一个无比强悍的文件管理器 。他支持VBS和JS插件扩展,提供了无限可能。他支持鼠标手势,支持多标签浏览,具有类似浏览器收藏夹功能,具有丰富的搜索模式:在新标签显示搜索结果,搜索模式有:搜索子文件夹、搜索所有分页、选择通配符,搜索最符合,选择文件(可以输入文件的部分名字来自动选中),在工具-MDIE 选项里,勾选“添加至文件的右键菜单”和“替换资源管理器”两项后,可以真正替换掉资源管理器。有详细的个性化选项设置。超赞。 ※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※ 温馨提示:如果选择了“添加至文件的右键菜单”和“替换资源管理器”两项来替代资源管理器,卸载MDIE之前必须把这两项勾掉,否则双击文件夹默认打开方式是MDIE导致无法打开文件夹!如果已经卸载,可以重装后在勾掉这两项,然后卸载! ※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※ MDIE的所有设置均保存在注册表[HKEY_CURRENT_USER\software\MDIE2]主键之下。 安装时根据提示确认导入注册表文件,下面的设置就会生效。如果注册表被锁定了,运行程序组里面的接触注册表编辑限制就行了。 mdie设置说明:工具→mdie选项→ 1、常规标签: √记住窗口位置 √添加至文件的右键菜单 √替代资源管理器 √关闭时,最小化到系统托盘 2、列表窗口: 默认样式→列表,文字宽度222,列表宽度444 3、分页标签: 右键点击→选择关闭(这个选项很好用) shift+右键点击→右键功能菜单 ctrl+右键点击→右键功能菜单 滚轮点击→分页操作菜单 双击→关闭 4、窗口动作: 点击收藏夹:打开→shift,新分页→无,这样可以保证单击收藏夹时打开新标签。 点击链接:打开→shift,新分页→无,这样可以保证单击链接时打开新标签。 点击地址栏:打开→shift,新分页→无,这样可以保证在地址栏输入的时候打开新标签。 滚轮点击列表窗口→新标签。 5、启动时: √恢复上次结束时的分页 6、在搜索结果栏目中右击搜索到的项目没有右击关联菜单,不能右击→打开所在的文件夹。但是我们可以通过鼠标手势来实现,具体办法是:工具→鼠标手势→工具→其他命令→在新分页中打开→场所选择搜索栏→动作选择R→即可。那么我们就可以在搜索的结果中右击后向右拖动来实现在我的电脑中右击打开所在文件夹那种效果。MDIE鼠标手势真的无所不能无比强大,慢慢研究吧! 7、建议把硬盘CDEF等及桌面、我的电脑放到链接栏,例如打开F盘→收藏→添加到链接。 删除的方法是:按CTRL+I或者单击查看→侧边栏→链接栏→选择F→删除。 8、已有的鼠标手势:后退R←,前进R→,搜索栏中在新分页打开R→,向上一级R↑或双击空白处,刷新R↓↑,下一分页Rwheel↓,上一分页Rwheel↑,关闭标签R↓→,恢复最后关闭的标签R→←,显示隐藏文件R↓,关闭全部分页R↓←,隐藏已知文件类型的扩展名R→↓,在当前文件夹打开CMD窗口R↑→,高级更名R↑↓,复制选中文件路径并弹出对话框↑←。 几个MDIE的插件: 单击MDIE工具→扩展功能→添加脚本→MDIE隐藏已知文件类型的扩展名.vbs→确定之后,你可以为他设定一个鼠标手势,我设置的是R→↓。 //MDIE隐藏已知文件类型的扩展名.vbs //Dim WSHShell WSHShell=new ActiveXObject("WScript.Shell") MDIE.Command(5100) //WSHShell.SendKeys ("%TF") //MDIE.Sleep(600) WSHShell.SendKeys ("^{TAB}{TAB}{DOWN 14}") WSHShell.SendKeys (" {TAB}{TAB} ") MDIE.Sleep(300) WSHShell.SendKeys ("{BACKSPACE}") MDIE.Sleep(300) WSHShell.SendKeys ("%{LEFT}") //MDIE.Command(5207) //FolderView.refresh(0) //MDIE显示隐藏文件.vbs,这个不用VBS也行,直接把工具→快速选项设置→显示隐藏文件→用鼠标手势设置为R↓就行了。 MDIE.Command(5105) //在当前文件夹打开cmd窗口.js,这个网友发布的,然后把它设置为鼠标手势R↑→,看个人爱好。 var shell = new ActiveXObject("WScript.Shell"); shell.Run('cmd /K @cd /d '+FolderView.Path +'"'); //备份MDIE注册表项目.js var d = new Date(); var s = d.getFullYear() + "-"; s += (d.getMonth() + 1) + "-"; s += d.getDate() + "-"; s += d.getHours() + "-"; s += d.getMinutes() + ".reg"; var WshShell = new ActiveXObject("WScript.Shell"); WshShell.Exec("Regedit /E "+ s +" HKEY_CURRENT_USER\\software\\MDIE2"); //查找目标.js var WshShell = new ActiveXObject("WScript.Shell"); var oShellLink = WshShell.CreateShortcut(FolderView.FocusItem.Path); FolderView.open(oShellLink.TargetPath); //复制选中文件路径.vbs MDIE.Clipboard(FolderView.FocusItem.Path); //复制选中文件路径并弹出对话框.js MDIE.Clipboard(FolderView.FocusItem.Path); MDIE.echo(MDIE.Clipboard); //新建txt文件.js objFso = new ActiveXObject( "Scripting.FileSystemObject" ); objWsh = new ActiveXObject( "WScript.Shell" ); strDTxtReg = objWsh.RegRead( "HKCR\\.txt\\" ); strTxtReg = objWsh.RegRead( "HKCR\\" + strDTxtReg + "\\" ); strFileName = FolderView.Path + "\\新建" + strTxtReg + "\.txt"; for ( i = 2 ; objFso.FileExists( strFileName ) ; i++ ) { strFileName = FolderView.Path + "\\新建" + strTxtReg + " (" + i + ")\.txt"; } objFso.CreateTextFile( strFileName ); FolderView.Refresh(2); MDIE.Command( 5226 ); MDIE.Command( 5206 ); //用资源管理器打开当前窗口.js var viewerPath = "C:\\WINDOWS\\explorer.exe"; var shell = new ActiveXObject("WScript.Shell"); shell.Run('"' + viewerPath + '" "' + FolderView.Path+ '"', 1, false); 运行js提示库没有注册错误8002801d的解决办法: 这个错误主要是因为windows scripts版本较低,在微软官网搜索windows scripts,选择scr56chs.exe下载后安装即可。 http://www.microsoft.com/downloads/zh-cn/details.aspx?FamilyID=376d98b6-67cf-4473-9b7d-f635292a286f&displaylang=zh-cn http://download.microsoft.com/download/winscript56/Install/5.6/W982KMe/CN/scr56chs.exe

87,901

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧