VBS 映射远程电脑磁盘
'以下创建ie对象,以及设置ie对象的一些属性 set ie=wscript.createobject("internetexplorer.application","event_") ie.menubar=0 '取消菜单栏 ie.addressbar=0 '取消地址栏 ie.toolbar=0 '取消工具栏 ie.statusbar=0 '取消状态栏 ie.width=380 'ie对象宽度 ie.height=500 'ie对象高度 ie.resizable=0 '不允许用户改变窗口大小 ie.navigate "about:blank" '打开空白页面 ie.left=fix((ie.document.parentwindow.screen.availwidth-ie.width)/2) '水平居中 ie.top=fix((ie.document.parentwindow.screen.availheight-ie.height)/2) '垂直居中 ie.visible=1 '窗口可见 '以下调用document.write方法,写ie对象内容 with ie.document .write "<html>" .write "<title>映射远程电脑磁盘</title> "'ie对象标题 .write "<body scroll=yes>" .write "<p align=right><input id=help type=button value=帮助> <input id=about type=button value=关于>" .write "<h2 align=center>映射远程电脑磁盘</h2><br>" .write "<fieldset><legend >目标IP</legend><lable><font size=2>远程电脑的IP地址:</font></lable><input id=ip type=text size=15 value=192.168.1.104></fieldset><br>" .write "<fieldset><legend>用户名和密码</legend><lable><font size=2>用户名:</font></lable><input id=user type=text size=10 value=administrator> <lable><font size=2>密码:</font></lable><input id=pass type=password size=10 value=111111></fieldset><br>" .write "<fieldset><legend>盘符</legend><lable><font size=2>远程盘符:</font></lable><input id=disk1 type=text size=2 value=c> <lable><font size=2>本地盘符:</font></lable><input id=disk2 type=text size=2 value=p></fieldset><br>" .write "<fieldset><legend>删除网络映射</legend><lable><font size=2>输入单个网络驱动器盘符:</font></lable><input id=disk3 type=text size=2 >  <input id=del type=button value=删除><br><lable><font size=2>删除本地所有网络驱动器:</font></lable><input id=dels type=button value=删除></fieldset>" .write "<p align=center><input id=confirm type=button value=确定>     <input id=cancel type=button value=取消>" .write "</body>" .write "</html>" end with '以下是设置点击页面按钮时的处理函数 set wnd=ie.document.parentwindow '设置wnd为窗口对象 set id=ie.document.all '设置id为document中全部对象的集合 id.confirm.onclick=getref("confirm") '设置点击"确定"按钮时的处理函数 id.cancel.onclick=getref("cancel") '设置点击"取消"按钮时的处理函数 id.del.onclick=getref("del") '设置点击单个"删除"按钮时的处理函数 id.dels.onclick=getref("dels") '设置点击全部"删除"按钮时的处理函数 id.about.onclick=getref("about")'设置点击"关于"按钮时的处理函数 id.help.onclick=getref("help")'设置点击"帮助"按钮时的处理函数 '由于ie对象支持事件,所以相应的,脚本以无限循环来等待各种事件 do while true wscript.sleep 100 loop 'ie退出事件处理过程 sub event_onquit wscript.quit '当ie退出时,脚本也退出 end sub '"帮助"按钮处理函数 sub help wnd.alert("错误号5,拒绝访问:很可能你使用的用户不是管理员权限的,先提升权限;"&Chr(10)&"错误号51,Windows无法找到网络路径:网络有问题;"&Chr(10)&"错误号53,找不到网络路径:ip地址错误;目标未开机;目标lanmanserver服务未启动;目标有防火墙(端口过滤); (net start lanmanserver 开启lanmanserver服务)"&Chr(10)&"错误号67,找不到网络名:你的lanmanworkstation服务未启动或者目标删除了ipc$; "&Chr(10)&"错误号1219,提供的凭据与已存在的凭据集冲突:你已经和对方建立了一个ipc$,请删除再连; "&Chr(10)&"错误号1326,未知的用户名或错误密码:原因很明显了; "&Chr(10)&"错误号1792,试图登录,但是网络登录服务没有启动:目标NetLogon服务未启动; "&Chr(10)&"错误号2242,此用户的密码已经过期:目标有帐号策略,强制定期要求更改密码") end sub '"关于"按钮处理函数 sub about wnd.alert ("此脚本仅供娱乐而已,目前仍存在Bug"&Chr(10)&"如有更好的建议请联系QQ:798776238"&Chr(10)&"作者:sirrah") end sub '单个"删除"按钮处理函数 sub del with id Dim str Set objFSO = CreateObject("Scripting.FileSystemObject") Set colDrives = objFSO.Drives '判断删除单个网络映射的盘符输入框是否是空的,如果是空的,给出提示 if (.disk3.value="") Then For Each objDrive in colDrives if(objDrive.DriveType=3 ) then str=str & objDrive.DriveLetter & "、" end if Next '判断当前电脑是否存在网络映射 if(str="") then wnd.alert("当前没有网络映射!!!") exit sub end if wnd.alert ("您当前电脑存在的网络驱动器盘符是:" & Left(str,Len(str)-1) & Chr(10)&"请输入相应盘符,并点击删除即可删除该网络驱动器") exit sub end if '判断当前输入的盘符是否存在 For Each objDrive in colDrives If (objDrive.DriveType=3 and objDrive.DriveLetter=UCase(.disk3.value)) then on error resume next Set vbs2=CreateObject("Wscript.Shell") vbs2.Run "cmd" wscript.sleep 500 vbs2.SendKeys "net use " & .disk3.value & ": /del" & "{Enter}" vbs2.SendKeys "exit" vbs2.SendKeys "{Enter}" .disk3.value="" Exit sub End If next wnd.alert ("您当前输入的盘符所对应的网络驱动器不存在,请重新输入!") .disk3.value="" end with end sub '全部"删除"按钮处理函数 sub dels '判断当前是否存在网络映射 Set objFSO = CreateObject("Scripting.FileSystemObject") Set colDrives = objFSO.Drives For Each objDrive in colDrives if(objDrive.DriveType=3) Then '最后验证是否真的需要删除本地所有网络映射 intMessage=msgbox("点击是,您将删除本地所有网络映射,点击否,您将取消删除本地所有网络映射",vbYesNo,"确认是否全部删除") If intMessage=vbYes then on error resume next Set vbs=CreateObject("Wscript.Shell") vbs.Run "cmd" wscript.sleep 500 vbs.SendKeys " net use * /del " & " {enter}" & "Y" & " {enter}" & "exit" & "{Enter}" Exit sub else Exit sub End If end If Next wnd.alert("当前没有网络映射!!!") end Sub '"确认"按钮处理函数 sub confirm with id If(.ip.value="") then wnd.alert("请输入IP地址") exit sub End If If(.user.value="") then wnd.alert("请输入登入用户名") exit sub End If If(.pass.value="") then wnd.alert("请输入登入密码") exit sub End If If(.disk1.value="") then wnd.alert("请输入远程盘符") exit sub End If If(.disk2.value="") then wnd.alert("请输入本地盘符") exit sub End If '判断映射到本地的盘符是否存在 Set objFSO = CreateObject("Scripting.FileSystemObject") Set colDrives = objFSO.Drives For Each objDrive in colDrives If (objDrive.DriveLetter=UCase(.disk2.value)) then wnd.alert("对不起,您输入的本地盘符"& .disk2.value &"已存在,请重新输入!!!") .disk2.value="" Exit Sub End If Next '映射网络驱动器 on error resume next Set vbs1=CreateObject("Wscript.Shell") vbs1.Run "cmd" wscript.sleep 500 '建立空链接 vbs1.SendKeys "net use \\" & .ip.value & "\ipc$ " & Chr(34) & .pass.value & Chr(34) & " /user:"& Chr(34) & .user.value & Chr(34) & "{enter}" '映射磁盘 vbs1.SendKeys "net use " & .disk2.value & ": \\"& .ip.value & "\" & .disk1.value & "$ " & Chr(34)& .pass.value & Chr(34) & " /user:" & Chr(34) & .user.value & Chr(34) & " {enter}" vbs1.SendKeys "exit" vbs1.SendKeys "{Enter}" .disk1.value="" .disk2.value="" end with end sub '"取消"按钮处理函数 sub cancel ie.quit end sub
如果你對現在不滿意...否則你就好好學,因爲你還只是菜鳥...