控制面板的网络连接设置里,有个选项,是否允许文件和打印机共享,不知什么原因,我的机器每次启动后,这个选项都没选中。因为需要在另一台电脑上访问机器上的资源,所以需要点选这个选项。每次手工操作太繁,就打算用程序来实现。查到一条命令行:
netsh advfirewall firewall set rule group="File and Printer Sharing" new enable=Yes
但我的机器上,因为装了诺顿,所以把windows firewall服务禁了,所以这个命令行不通。查了下,也没有找到注册表里的键值,只好又用autoIt脚本实现:
Run("cmd /c ncpa.cpl") ;打开网络连接窗口 _WinWaitActivate("Network Connections","") WinMove("Network Connections","", 1, 0) ;打开连接属性窗口 MouseClick("right", 111, 264) For $i = 1 to 8 Send("{DOWN}") Sleep(200) Next Send("{ENTER}") Sleep(1000) ControlClick("[CLASS:SysListView32]","",15007) ;选中选项列表 Sleep(200) For $i = 1 To 4 Send("{DOWN}") Sleep(200) Next Send("{SPACE}") ;选中文件分享的checkbox Sleep(200) ControlClick("", "OK", 1) Sleep(1000) Send("{ALTDOWN}{F4}{ALTUP}") ;关闭网络连接窗口 Func _WinWaitActivate($title,$text,$timeout=0) WinWait($title,$text,$timeout) If Not WinActive($title,$text) Then WinActivate($title,$text) WinWaitActive($title,$text,$timeout) EndFunc
调试通过后将au3转成exe,放个快捷方式到桌面。
autoIt包装了一些windows api,操作起来比较方便。