W dniu 2015-09-12 o 15:54, Stregor pisze:
Jak chcesz się bawić to masz to (sam to popełniłem, teraz uważam to za głupotę):
/*
* shosts.js
*
* W katalogu WINNT\system32\drivers\etc znajduje się plik hosts, zawiera on
* mapowanie ip na nazwy hostów i odwrotnie. W pewnych przypadkach kiedy serwer
* DNS jest niedostępny można podmienić lokalnie ten plik co zapewni
* funkcjonowanie sieci.
*
*/
var cDirHosts = "E:\\WINNT\\system32\\drivers\\etc\\";
var cOrgHosts = "hosts_local";
var cAllHosts = "hosts_all";
var lstHosts;
var lQuit;
var cHosts;
var nInd;
var cExit = "Exit";
var cRun = "Ok";
/*
* AllTrim
*/
function AllTrim ( cString )
{
return ( cString.replace ( /(^\s*)|(\s*$)/g, "" ) );
}
/*
* Return true jeśli ustawiony jest hosts_all
* Jeśli na początku pliku znajduje się
* # hosts_all
* to jest to hosts z własnymi przypisaniami
*/
function GetHostsType()
{
var fsrv, fso, cLine, lIs;
var aComm = Array();
fso = new ActiveXObject( "Scripting.FileSystemObject" );
fsrv = fso.OpenTextFile( cDirHosts + "hosts", 1, true );
lIs = false;
while( !fsrv.AtEndOfStream )
{
cLine = AllTrim( fsrv.ReadLine() );
if( cLine.substr( 0, 1 ) != '#' )
break;
if( cLine.substr( 2, 9 ) == "hosts_all" )
{
lIs = true;
break;
}
}
fsrv.Close();
return( lIs );
}
/*
* Kopiowanie właściwego pliku na hosts
*/
function CopyHosts( cHosts )
{
var fso;
var fso = WScript.CreateObject( "Scripting.FileSystemObject" );
fso.CopyFile( cDirHosts + cHosts, cDirHosts + "hosts", true );
}
/*
* Loop
*/
lQuit = false;
var lstHosts = new ActiveXObject( "ArtDLL.Test" );
while( !lQuit )
{
cHosts = GetHostsType() ? "All" : "Local";
lstHosts.Captions( cExit, cRun );
lstHosts.Title( "Set Hosts - [" + cHosts + "]" );
lstHosts.FontBold( true );
lstHosts.FontList( "FixedSys", 9, false );
lstHosts.Size( 240, 80 );
if( cHosts == "All" )
{
lstHosts.Add( "[ ] Local Hosts" );
lstHosts.Add( "[x] All Hosts" );
}
else
{
lstHosts.Add( "[x] Local Hosts" );
lstHosts.Add( "[ ] All Hosts" );
}
lstHosts.Show()
if( lstHosts.GetButton() == cRun )
{
nInd = lstHosts.GetItem();
if( nInd >= 0 )
{
if( nInd == 0 )
CopyHosts( cOrgHosts );
else
CopyHosts( cAllHosts );
}
else
WScript.Echo( "Item in list not selected, select it and then press
[" + cRun + "]!" );
}
else
lQuit = true;
}
--
Artur
|