中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » Microsoft 网络的文件和打印机共享→勾选/取消勾选→VBS版
« [1] [2] »
作者:
标题: Microsoft 网络的文件和打印机共享→勾选/取消勾选→VBS版 上一主题 | 下一主题
baomaboy
银牌会员





积分 1513
发帖 554
注册 2005-12-30
状态 离线
『楼 主』:  Microsoft 网络的文件和打印机共享→勾选/取消勾选→VBS版

谢谢eech的测试和lxmxn版主的ncpa.cpl,解决了非经典开始菜单下运行出错的bug。
增加了ronin要求的自动判断勾选状态,本机测试通过,但通用性差,需要的请自行修改。
注:运行参数 i 后没有任何反应是正常状态,因为检测到已经开启共享了不需要执行,反之 参数 u 也一样。

  Quote:
'''NetShare_Power.VBS by baomaboy
'''支持参数 i 开启,u 关闭,如:"wscript.exe NetShare_Power.VBS i"
Dim WshSHell
On Error Resume Next
Const HKEY_LOCAL_MACHINE = &H80000002
strComputer = "."
Set WshShell = WScript.CreateObject("WScript.Shell")
Set Args = WScript.Arguments
Set oReg=GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & strComputer & "\root\default:StdRegProv")
oReg.GetMultiStringValue HKEY_LOCAL_MACHINE,"SYSTEM\CurrentControlSet\Services\lanmanserver\Linkage","Route", arrValues
For Each strValue In arrValues
DuoString=DuoString&strValue
Next
NetShareState = InStr(DuoString,"{86522D76-E90D-4C8B-957E-FA3603378EA5}")
if Args.Count=0 then
intAnswer = MsgBox("【是】将开启“Microsoft 网络的文件和打印机共享”项,"&Chr(10)&Chr(10)&"【否】将关闭“Microsoft 网络的文件和打印机共享”项。", vbQuestion + vbYesNoCancel, "开/关Microsoft 网络的文件和打印机共享” - baomaboy")
If intAnswer = vbYes and NetShareState = 0 Then
Call Exc
end if
If intAnswer = vbNo and NetShareState <> 0 Then
Call Exc
end if
elseif LCase(Args(0)) = "i" and NetShareState = 0 then
Call Exc
elseif LCase(Args(0)) = "u" and NetShareState <> 0 then
Call Exc
end if
Sub Exc()
WshSHell.Run "control.exe ncpa.cpl"
WScript.Sleep 1000
WshSHell.SendKeys "{DOWN}{UP}"
WScript.Sleep 1000
WshSHell.SendKeys "%FR"
WScript.Sleep 1000
WshSHell.SendKeys "{DOWN}{ }"
WScript.Sleep 1000
WshSHell.SendKeys "{TAB 5}{Enter}"
WScript.Sleep 3000
WshSHell.SendKeys "%FC"
End Sub
Set WshSHell = Nothing
WScript.Quit

 

[ Last edited by baomaboy on 2008-3-24 at 11:59 PM ]

   此帖被 +4 点积分     点击查看详情   
评分人:【 lxmxn 分数: +4  时间:2007-5-13 03:35




好多菩提树,好多明镜台。本来好多物,好多的尘埃。
2007-5-13 01:09
查看资料  发送邮件  发短消息 网志   编辑帖子
wudixin96
银牌会员





积分 1928
发帖 931
注册 2007-1-6
状态 离线
『第 2 楼』:  

发现2000下。似乎没效果哦

2007-5-13 10:52
查看资料  发短消息 网志   编辑帖子
eech
高级用户




积分 906
发帖 346
注册 2006-7-10
状态 离线
『第 3 楼』:  

XPSP2运行后,
开始菜单闪一下
弹出搜索的窗口,
http://photo1.bababian.com/uploa ... 75245B6A0D150A6.jpg
然后自动关闭这个窗口

2007-5-13 12:58
查看资料  发短消息 网志   编辑帖子
ronin
中级用户




积分 421
发帖 111
注册 2003-8-29
状态 离线
『第 4 楼』:  

使用正常,谢谢baomaboy帮我解决了两个大问题

2007-5-13 14:01
查看资料  发送邮件  发短消息 网志   编辑帖子
baomaboy
银牌会员





积分 1513
发帖 554
注册 2005-12-30
状态 离线
『第 5 楼』:  



  Quote:
Originally posted by eech at 2007-5-13 12:58:
XPSP2运行后,
开始菜单闪一下
弹出搜索的窗口,
http://photo1.bababian.com/uploa ... 75245B6A0D150A6.jpg
然后自动关闭这个窗口

^_^ 发现你的系统总与大家的有些异样啊,不过这个问题到是看明白了,你应该用的是xp默认的菜单,换成”经典开始“就行了,
等会儿写个两个菜单都适用的本版更新一下,
呵呵 你的测试很好啊,这两个代码更加完善了,适用性更强了。



好多菩提树,好多明镜台。本来好多物,好多的尘埃。
2007-5-13 14:37
查看资料  发送邮件  发短消息 网志   编辑帖子
ronin
中级用户




积分 421
发帖 111
注册 2003-8-29
状态 离线
『第 6 楼』:  

等待你的新版本哦

2007-5-13 14:47
查看资料  发送邮件  发短消息 网志   编辑帖子
baomaboy
银牌会员





积分 1513
发帖 554
注册 2005-12-30
状态 离线
『第 7 楼』:  



  Quote:
Originally posted by ronin at 2007-5-13 14:47:
等待你的新版本哦

已经改进了关于使用非“经典开始菜单”时运行出错的bug



好多菩提树,好多明镜台。本来好多物,好多的尘埃。
2007-5-13 15:07
查看资料  发送邮件  发短消息 网志   编辑帖子
eech
高级用户




积分 906
发帖 346
注册 2006-7-10
状态 离线
『第 8 楼』:  

对了,baomaboy兄,你写的脚本是去掉这项的吧

http://photo1.bababian.com/uploa ... DF054EAA4D5DE47.jpg

2007-5-13 15:46
查看资料  发短消息 网志   编辑帖子
baomaboy
银牌会员





积分 1513
发帖 554
注册 2005-12-30
状态 离线
『第 9 楼』:  



  Quote:
Originally posted by eech at 2007-5-13 15:46:
对了,baomaboy兄,你写的脚本是去掉这项的吧

http://photo1.bababian.com/uploa ... DF054EAA4D5DE47.jpg

是的,你的多了虚拟机。另外发图片时用“插入图片”功能或用代码发大家就可以直接看到了
[img]http://photo1.bababian.com/upload/20070513/C345DEC54A6B2CE7ADF054EAA4D5DE47.jpg[/img]


[ Last edited by baomaboy on 2007-5-13 at 04:15 PM ]



好多菩提树,好多明镜台。本来好多物,好多的尘埃。
2007-5-13 16:13
查看资料  发送邮件  发短消息 网志   编辑帖子
ronin
中级用户




积分 421
发帖 111
注册 2003-8-29
状态 离线
『第 10 楼』:  

baomaboy能不能改成勾选和取消勾选两个VBS?这样才方便批处理调用,在控制开通共享和关闭共享时候要分别调用才行

2007-5-13 16:39
查看资料  发送邮件  发短消息 网志   编辑帖子
baomaboy
银牌会员





积分 1513
发帖 554
注册 2005-12-30
状态 离线
『第 11 楼』:  



  Quote:
Originally posted by ronin at 2007-5-13 16:39:
baomaboy能不能改成勾选和取消勾选两个VBS?这样才方便批处理调用,在控制开通共享和关闭共享时候要分别调用才行

理论上可以啊,一会儿有时间,我改一下,不用两个VBS,加个判断一个VBS就行。



好多菩提树,好多明镜台。本来好多物,好多的尘埃。
2007-5-13 17:01
查看资料  发送邮件  发短消息 网志   编辑帖子
baomaboy
银牌会员





积分 1513
发帖 554
注册 2005-12-30
状态 离线
『第 12 楼』:  

刚才没看到还要调用,如果不用两个VBS要加参数调用。



好多菩提树,好多明镜台。本来好多物,好多的尘埃。
2007-5-13 17:02
查看资料  发送邮件  发短消息 网志   编辑帖子
ronin
中级用户




积分 421
发帖 111
注册 2003-8-29
状态 离线
『第 13 楼』:  

我觉得用两个和参数调用都可以

2007-5-13 17:18
查看资料  发送邮件  发短消息 网志   编辑帖子
baomaboy
银牌会员





积分 1513
发帖 554
注册 2005-12-30
状态 离线
『第 14 楼』:  



  Quote:
Originally posted by ronin at 2007-5-13 17:18:
我觉得用两个和参数调用都可以

是可以,要么两个VBS文件,要么一个VBS文件加参数调用,

嗯 那个 “判断勾选” 可能要读一下注册表或用到WMI,你可以先试试看。我现在没时间,之后再试。



好多菩提树,好多明镜台。本来好多物,好多的尘埃。
2007-5-13 17:47
查看资料  发送邮件  发短消息 网志   编辑帖子
ronin
中级用户




积分 421
发帖 111
注册 2003-8-29
状态 离线
『第 15 楼』:  

发现了一个问题,批处理设置IP和其它电脑有重复时候,这个VBS就没有效果

2007-5-14 10:10
查看资料  发送邮件  发短消息 网志   编辑帖子
« [1] [2] »
请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: