monfs :我想知道javascript是否可以实现这样的功能来改变本地的IP地址,例如我本地设置的IP地址是192.168.0.1,我想通过javascript+html实现IP变换的小程序!
Rimifon :如果使用IE,会有安全限制,如果使用纯wsh或者hta,应该能够实现。
修改DNS(另存为IP.jse或者IP.js,双击运行):
查看计算机硬件信息:
var WMI = GetObject("WinMgmts://127.0.0.1");
/* 用于远程调用
var objRmt = new ActiveXObject("WbemScripting.SWbemLocator");
var WMI = objRmt.ConnectServer("www.fengyun.org", "", "Administrator", "******");
//*/
var arrOS = new Array;
/* 查询系统信息 */
var sql = "select * from Win32_OperatingSystem";
GetInfo(sql, function(obj)
{
var arrTmp = ["系统"];
arrTmp.push("计算机名:" + obj.CSName);
arrTmp.push("操作系统:" + obj.Caption + "(" + obj.CSDVersion + ")");
arrTmp.push("安装时间:" + ParseTime(obj.InstallDate));
arrTmp.push("启动时间:" + ParseTime(obj.LastBootUpTime));
return arrTmp;
});
sql = "select * from Win32_BIOS";
GetInfo(sql, function(obj)
{
var arrTmp = ["BIOS"];
arrTmp.push("名 称:" + obj.Name);
arrTmp.push("版 本:" + obj.Version);
arrTmp.push("发布日期:" + ParseTime(obj.ReleaseDate));
return arrTmp;
});
sql = "select * from Win32_Processor";
GetInfo(sql, function(obj)
{
var arrTmp = ["中央处理器"];
arrTmp.push("设备标示:" + obj.DeviceID);
arrTmp.push("名 称:" + obj.Name);
arrTmp.push("说 明:" + obj.Description);
arrTmp.push("版 本:" + obj.Version);
arrTmp.push("工作频率:" + ParseSpeed(obj.CurrentClockSpeed));
return arrTmp;
});
sql = "select * from Win32_PhysicalMemory";
GetMemInfo(sql);
sql = "select * from Win32_LogicalDisk where DriveType=3";
GetDiskInfo(sql);
sql = "select * from Win32_VideoController";
GetInfo(sql, function(obj)
{
var arrTmp = ["显卡"];
arrTmp.push("芯片类型:" + obj.VideoProcessor);
arrTmp.push("显存大小:" + ParseMemory(obj.AdapterRAM));
return arrTmp;
});
WSH.Echo(arrOS.join("\r\n\r\n"));
function GetInfo(sql, func)
{
var enmObj = new Enumerator(WMI.ExecQuery(sql));
while(!enmObj.atEnd())
{
arrOS.push(func(enmObj.item()).join("\r\n"));
enmObj.moveNext();
}
}
function ParseTime(strTime)
{
return strTime.replace(/(.{4})(.{2})(.{2})(.{2})(.{2})(.{2}).*/, "$1-$2-$3 $4:$5:$6");
}
function ParseSpeed(speed)
{
if(speed > 999) return (speed / 1000) + " GHz";
return speed + " MHz";
}
function GetMemInfo(sql)
{
var totalSize = 0;
var enmObj = new Enumerator(WMI.ExecQuery(sql));
while(!enmObj.atEnd())
{
totalSize -= -enmObj.item().Capacity;
enmObj.moveNext();
}
var arrTmp = ["物理内存(总共 " + ParseMemory(totalSize) + ")"];
enmObj.moveFirst();
while(!enmObj.atEnd())
{
var obj = enmObj.item();
arrTmp.push(obj.Tag + ": " + ParseMemory(obj.Capacity));
enmObj.moveNext();
}
arrOS.push(arrTmp.join("\r\n"));
}
function ParseMemory(size)
{
var i = 0, arrExt = ["字节", "KB", "MB", "GB"];
while(true)
{
if(size < 1024) return size + " " + arrExt[ i ];
size = (size / 1024).toFixed(2);
i++;
}
}
function GetDiskInfo(sql)
{
var totalSize = 0;
var enmObj = new Enumerator(WMI.ExecQuery(sql));
while(!enmObj.atEnd())
{
totalSize -= -enmObj.item().Size;
enmObj.moveNext();
}
var arrTmp = ["本地硬盘(总共 " + ParseMemory(totalSize) + ")"];
enmObj.moveFirst();
while(!enmObj.atEnd())
{
var obj = enmObj.item();
arrTmp.push(obj.Name + "(" + obj.FileSystem + "): 总共 " + ParseMemory(obj.Size) + "," + ParseMemory(obj.FreeSpace) + " 可用。");
enmObj.moveNext();
}
arrOS.push(arrTmp.join("\r\n"));
}
请稍等,评论加载中...