本程序的作用:
1. 检查是否存在HOSTS文件,有则继续,无则提示。
2. 读取HOSTS文件全部内容。
3. 设定一个或多个字串,并在HOSTS文件中查找与其相同的内容
4. 如果发现相同内容则提示相同内容,没有发现则自动插入之前设定好的字串在HOSTS文集中。
程序代码如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
#NoTrayIcon ;隐藏系统托盘图标 #RequireAdmin ;在Vista下获得管理员权限运行,这个不知道对不对.呵呵. FileSetAttrib(@SystemDir&"\drivers\etc\hosts","-RSAH") ;去掉Hosts文件的只读属性,有些人的文件可能是只读的. $File = @SystemDir&"\drivers\etc\hosts" ;这里要注意,不能用FileOpen(@SystemDir&"\drivers\etc\hosts",1) 要么读,要么写,不能兼得! ;这里感谢liongodmien的提醒! If FileExists(@SystemDir&"\drivers\etc\hosts") = 0 Then MsgBox(0, "错误:", "Hosts文件可能不存在。") EndIf ;如果没有HOSTS文件则提示出错. $String = FileRead($File) ;读取文件HOSTS文件的全部内容. $LocalHst1 = "127.0.0.1 localhost" ;定义要查找的几个字符串 $LocalHst1_Comp = StringInStr($String,$LocalHst1) ;设定查找内容,在读取的HOSTS文件内容中,查找相应定义过的查找内容 If $LocalHst1_Comp = 0 Then FileWrite($File, @CRLF&"127.0.0.1 localhost") Else MsgBox(0,"已存在LocalHst1",$LocalHst1) EndIf ;查找$LocalHst1的地址是否存在,不存在则写入 FileClose($File) ;关闭文件 |