主頁 > 知識庫 > HTA編輯HOST文件的腳本

HTA編輯HOST文件的腳本

熱門標(biāo)簽:網(wǎng)站文章發(fā)布 檢查注冊表項(xiàng) 銀行業(yè)務(wù) 服務(wù)器配置 鐵路電話系統(tǒng) 智能手機(jī) 呼叫中心市場需求 美圖手機(jī)
HTML>
HEAD>
TITLE>HOSTS 文件編輯器/TITLE>
meta http-equiv="Content-Type" content="text/html; charset=gb2312">
meta http-equiv="Content-Language" content="zh-CN">
HTA:APPLICATION ID="hostedit"
APPLICATIONNAME="hostedit"
BORDER="thick"
BORDERSTYLE="normal"
CAPTION="yes"
ICON="C:\WINDOWS\system32\rasphone.exe" 
MAXIMIZEBUTTON="yes"
MINIMIZEBUTTON="yes"
SHOWINTASKBAR="yes"
SINGLEINSTANCE="yes"
SYSMENU="yes"
VERSION="1.0"
WINDOWSTATE="normal" />
script language="JScript">
window.onerror = function ()
{
    window.alert("程序發(fā)生了未知錯誤,當(dāng)前窗口將被關(guān)閉!");
    window.close();
    return true;
}
var windowW=450;    //窗體寬
var windowH=200;    //窗體高
var canresize=false;//是否可以改變大小
var windowW2=windowW;//編輯時(shí)窗體寬
var windowH2=200;//編輯時(shí)窗體高
window.resizeTo(windowW,windowH);
//window.moveTo((screen.width-windowW)/2,(screen.height-windowH)/2);
window.onresize=function(){if(!canresize)window.resizeTo(windowW,windowH);}
function init()
{
    var ui_table = document.getElementById('UI_TABLE');
    var bestHeight = 70+ui_table.scrollHeight;
    if(bestHeight > screen.height) bestHeight = screen.height;
    window.resizeTo(windowW, bestHeight);
    //window.moveTo((screen.width-windowW)/2,(screen.height-bestHeight)/2);
}
var hostfile = '\\drivers\\etc\\hosts';
function getlist(){
    var html='';
    var ids='';
    var i=1;
    FSO = new ActiveXObject("Scripting.FileSystemObject");
    var spath = FSO.GetSpecialFolder(1)+hostfile;
    host = FSO.OpenTextFile(spath, 1, false);
    while(!host.AtEndOfStream){
         tmp = host.ReadLine();
         if(/^#?\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\s+([a-zA-Z0-9\-]+\.[a-zA-Z0-9\-]+(\.(com|net|org|edu|info|biz|cc|tv|gov|mobi|name|cn|en|us|hk|tw))+)$/.test(tmp))
         {
        as=tmp.replace(/\s+/,'|:|').split('|:|');
        ids+='['+i+'],';
        if(/^\#/.test(as[0])){
            zt = '外網(wǎng)';
            ip = as[0].replace(/^\#/,'');
            co = '#eee!important';
            cz = 'a href="#" style="color:red;" onclick="zh('+i+',0);">切本地/a> | a href="#" style="color:red;" onclick="ed(this,'+i+');">編輯/a> | a href="#" style="color:red;" onclick="zh('+i+',2);">刪除/a>';

        }else{
            zt = '本地';
            ip = as[0];
            co = '#fff!important';
            cz = 'a href="#" onclick="zh('+i+',1);">切外網(wǎng)/a> | a href="#" style="color:red;" onclick="ed(this, '+i+');">編輯/a> | a href="#" style="color:red;" onclick="zh('+i+',2);">刪除/a>';    
        }

            html += 'tr>td style="background:'+co+';">'+zt+'/td>td style="background:'+co+';text-align:left;text-indent:6px;">'+as[1]+'/td>td style="text-align:left;text-indent:6px;background:'+co+';">'+ip+'/td>td style="background:'+co+';">'+cz+'/td>/tr>';
        }
        i++;
    }
    var o=document.getElementById('ids');
    o.value=ids;
    host.Close();
    return html;
}

function ed(eo, iId){    
    document.getElementById('editId').value=iId;
    document.getElementById('pIP').value=eo.parentElement.parentElement.children[2].innerText;
    document.getElementById('pURL').value=eo.parentElement.parentElement.children[1].innerText;
    document.getElementById('addButt').style.display='none';
    document.getElementById('editButt').style.display='inline';
    document.getElementById('HostList').style.display='none';
    document.getElementById('addHost').style.display='block';
    window.resizeTo(windowW2,windowH2);
}

function edits(sIp, sUrl){
    var oi=document.getElementById(sIp);
    var ou=document.getElementById(sUrl);
    if(oi.value=='' || /^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/.test(oi.value)==false) {
        alert('IP地址不能為空或你輸入的IP格式錯誤.');
        oi.focus();
        return;
    }
    if(ou.value=='' || /^[a-zA-Z0-9\-]+\.[a-zA-Z0-9\-]+(\.(com|net|org|edu|info|biz|cc|tv|gov|mobi|name|cn|en|us|hk|tw))+$/.test(ou.value)==false) {
        alert('域名不能為空或你輸入的域名格式錯誤.');
        ou.focus();
        return;
    }
    var iId = document.getElementById('editId').value;
    var body='';
    var i=1;
    FSO = new ActiveXObject("Scripting.FileSystemObject");
    var spath = FSO.GetSpecialFolder(1)+hostfile;    
    host = FSO.OpenTextFile(spath, 1, false);
    while(!host.AtEndOfStream){
        tmp = host.ReadLine();
        if(i==iId)
        {
            body+=oi.value+"\t"+ou.value+"\n";
        }
        else{
            body+=tmp+"\n";
        }
        i++;
    }
    host.close();
    svf = FSO.OpenTextFile(spath, 2, false);
    svf.Write(body);
    svf.close();
    window.location.reload();
}

function zh(irs,stype)
{
    var body='';
    var i=1;
    FSO = new ActiveXObject("Scripting.FileSystemObject");
    var spath = FSO.GetSpecialFolder(1)+hostfile;    
    host = FSO.OpenTextFile(spath, 1, false);
    while(!host.AtEndOfStream){
        tmp = host.ReadLine();
        if(i==irs)
        {
            if(stype==0){
                body+=tmp.replace(/^\#/,'');
                body+="\n";
            }else if(stype==1){
                if(/^\#/.test(tmp)){
                    body+=tmp+"\n";
                }else{
                    body+='#'+tmp +"\n";
                }
            }else{

            }
        }
        else{
            body+=tmp+"\n";
        }
        i++;
    }
    host.close();
    svf = FSO.OpenTextFile(spath, 2, false);
    svf.Write(body);
    svf.close();
    window.location.reload();
}

function zhall(stype)
{
    var body='';
    var i=1;
    var ids1=document.getElementById("ids").value;
    if(ids1=='') return;
    FSO = new ActiveXObject("Scripting.FileSystemObject");
    var spath = FSO.GetSpecialFolder(1)+hostfile;    
    host = FSO.OpenTextFile(spath, 1, false);
    while(!host.AtEndOfStream){
        tmp = host.ReadLine();
        if(stype==0  ids1.indexOf('['+i+'],')!== -1){
            body+=tmp.replace(/^\#/,'');
            body+="\n";
        }else if(stype==1  ids1.indexOf('['+i+'],')!== -1){
            if(/^\#/.test(tmp)){
                body+=tmp+"\n";
            }else{
                body+='#'+tmp +"\n";
            }
        }else{
            body+=tmp+"\n";
        }
        i++;
    }
    host.close();
    svf = FSO.OpenTextFile(spath, 2, false);
    svf.Write(body);
    svf.close();
    window.location.reload();
}

function AddHosts(sIp, sUrl){
    var oi=document.getElementById(sIp);
    var ou=document.getElementById(sUrl);
    if(oi.value=='' || /^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/.test(oi.value)==false) {
        alert('IP地址不能為空或你輸入的IP格式錯誤.');
        oi.focus();
        return;
    }
    if(ou.value=='' || /^[a-zA-Z0-9\-]+\.[a-zA-Z0-9\-]+\.((net)|(com)|(cn)|(org)|(cc)|(tv))$/.test(ou.value)==false) {
        alert('域名不能為空或你輸入的域名格式錯誤.');
        ou.focus();
        return;
    }

    FSO = new ActiveXObject("Scripting.FileSystemObject");
    var spath = FSO.GetSpecialFolder(1)+hostfile;    
    host = FSO.OpenTextFile(spath, 8, false);
    host.Write("\n"+oi.value+"\t"+ou.value+"\n");
    host.close();
    alert('增加域名成功!');
    window.location.reload();
}
/script>
style>
body{
 background-color:#99CCFF;
}
body *{
    font-size:12px;
    margin:0px;
    padding:0px;
}
.BUTT{
    BORDER: #2C59AA 1px solid;
    FONT-SIZE: 12px;
    COLOR: black;
    FILTER: progid:DXImageTransform.Microsoft.Gradient(GradientType=0, StartColorStr=#ffffff, EndColorStr=#C3DAF5);
    height:22px;
    padding: 3px 5px 0px;
    text-decoration: none;
}
.edit{
   BORDER: #2C59AA 1px solid;
   padding:1px;
}
#UI_TABLE{
    width:99%;cell-spacing:0px; margin:1px; border-collapse:collapse; border:1px solid #7d7d7d;
}
#UI_TABLE tr.TopTitle{
    text-align:center;
}
#UI_TABLE tr.TopTitle td {
    background-color:#C8E2F7;
}
#UI_TABLE tr td{
    border:1px solid #7d7d7d;text-align:center;padding:1px;
}

/style>
/HEAD>
BODY  onLoad="init()" oncontextmenu="return false;" style="text-align:center; margin:0px;overflow-y:auto;overflow-x:hidden;border:none;background:menu;">
div id="HostList">
    input type="hidden" name="ids"/>
    table id="UI_TABLE" >
        tr class="TopTitle">
            td>狀態(tài)/td>
            td style="width:140px;">域名/td>
            td>IP地址/td>
            td style="width:140px;">操作/td>    
        /tr>
        script language="javascript" type="text/JavaScript">
               document.writeln(getlist());
        /script>
    /table>
    div style="margin:6px;text-align:center;">
        input type="button" value="全部切本地" name="b4" onclick="zhall(0);" class="BUTT" />nbsp;nbsp;nbsp;nbsp;
        input type="button" value="全部切外網(wǎng)" name="b5" onclick="zhall(1);" class="BUTT" />nbsp;nbsp;nbsp;nbsp;
        input type="button" value="增加域名" name="b6" onclick="document.getElementById('HostList').style.display='none';document.getElementById('addHost').style.display='block'; window.resizeTo(windowW2,windowH2);" class="BUTT" />
    /div>
/div>
div id="addHost" style="display:none;">
    input type="hidden" name="editId" name="editId" />
    div style="text-align:left;margin:30px auto 0px; width:300px;">IP地址:input type="text" name="pIP" id="pIP" class="edit" />nbsp;nbsp;input type="button" value="127.0.0.1" name="b2" onclick="document.getElementById('pIP').value='127.0.0.1';" class="BUTT" />/div>
    div style="text-align:left;margin:20px auto; width:300px;">域nbsp;nbsp;名:input type="text" name="pURL" id="pURL" class="edit" />/div>
    div style="margin:10px;text-align:center;">
        input type="button" value="提  交" name="b1" id="addButt" onclick="AddHosts('pIp','pURL');" class="BUTT" />nbsp;nbsp;nbsp;nbsp;
        input type="button" value="編  輯" name="b2" id="editButt" style="display:none;" onclick="edits('pIp','pURL');" class="BUTT" />nbsp;nbsp;nbsp;nbsp;
        input type="button" value="返  回" name="b3" onclick="window.location.reload();" class="BUTT" />
    /div>
/div>


script>
//屏蔽部分鍵盤操作,比如 F5
function document.onkeydown()
{wek=window.event.keyCode;
if((window.event.altKey)((wek==37)||(wek==39)))
{window.alert("Error:Invalid operation!");event.returnValue=false;}
if((wek==116)||(event.ctrlKeywek==82))
{window.event.keyCode=0;event.returnValue=false;}
if((event.ctrlKey)(wek==78))
event.returnValue=false;
if((event.shiftKey)(wek==121))
event.returnValue=false;
if(window.event.srcElement.tagName=="A"window.event.shiftKey)
window.event.returnValue=false;
if((window.event.altKey)(wek==115))
{window.showModelessDialog("about:blank","","dialogWidth:1px;dialogheight:1px");return false;}
if(wek==122){window.event.keyCode=0;window.alert("Error:Invalid operation!");return false;}
}
/script>
/BODY>
/HTML>
hostedit.rar

標(biāo)簽:長治 新疆 上海 滄州 沈陽 河南 樂山 紅河

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《HTA編輯HOST文件的腳本》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266