设为首页收藏本站订阅更新

无忧脚本

 找回密码
 加入无忧

QQ登录

只需一步,快速开始

查看: 3728|回复: 14

[讨论] javascript是否可以更改本地IP地址 [复制链接]

Rank: 4

升级  3.4%

注册时间
2006-7-10
威望
207
阅读权限
50
积分
517
帖子
206
精华
0
UID
54198
状态
当前离线
发表于 2008-5-1 17:33:09 |显示全部楼层 |串个门|加好友|打招呼|发消息 |
查看详细资料
一键分享 一键分享
我想知道javascript是否可以实现这样的功能来改变本地的IP地址,例如我本地设置的IP地址是192.168.0.1,我想通过javascript+html实现IP变换的小程序!

Rank: 2

升级  22%

注册时间
2004-8-26
威望
44
阅读权限
20
积分
83
帖子
24
精华
0
UID
16119
状态
当前离线
发表于 2008-5-1 22:43:06 |显示全部楼层 |串个门|加好友|打招呼|发消息 |
查看详细资料

回复 #1 monfs 的帖子

javascript的社交圈子只能在浏览器中,要突破这个范围 需要借助其他的 如activeX之类的
否则后果不堪设想……

使用道具 举报

超级版主

新手上路

Rank: 8Rank: 8

注册时间
2004-5-22
威望
3336
阅读权限
150
积分
6241
帖子
3329
精华
3
UID
11749
状态
当前离线
发表于 2008-5-2 08:13:12 |显示全部楼层 |串个门|加好友|打招呼|发消息 |
查看详细资料 查看个人网站
如果使用IE,会有安全限制,如果使用纯wsh或者hta,应该能够实现。
風雲工作室
=========
广告位招租(做在老百姓眼皮底下的广告)

使用道具 举报

Rank: 1

升级  16%

注册时间
2006-12-8
威望
3
阅读权限
10
积分
8
帖子
3
精华
0
UID
61565
状态
当前离线
发表于 2008-5-2 09:18:43 |显示全部楼层 |串个门|加好友|打招呼|发消息 |
查看详细资料
同意楼上的意见

使用道具 举报

超级版主

新手上路

Rank: 8Rank: 8

注册时间
2004-5-22
威望
3336
阅读权限
150
积分
6241
帖子
3329
精华
3
UID
11749
状态
当前离线
发表于 2008-5-2 11:13:11 |显示全部楼层 |串个门|加好友|打招呼|发消息 |
查看详细资料 查看个人网站

例如修改DNS

[php]var WMI = GetObject("winmgmts://127.0.0.1");
var sql = "select * from Win32_NetworkAdapterConfiguration where IPEnabled=true";
var enmPing = new Enumerator(WMI.ExecQuery(sql));
var arrAdp = new Array;
while(!enmPing.atEnd())
{
        var arrIP = new Array;
        var objIP = enmPing.item();
        arrIP.push("网卡说明:" + objIP.Description);
        arrIP.push("硬件地址:" + objIP.MACAddress);
        arrIP.push("动态地址:" + (objIP.DHCPEnabled ? "是" : "否"));
        arrIP.push("网络地址:" + GetVBArray(objIP.IPAddress));
        arrIP.push("域名解析:" + GetVBArray(objIP.DNSServerSearchOrder));
        arrIP.push("子网掩码:" + GetVBArray(objIP.IPSubnet));
        arrIP.push("默认网关:" + GetVBArray(objIP.DefaultIPGateway));
        /* 将首选DNS设置为220.192.0.130,第二DNS设置为220.192.32.103 */
        //objIP.SetDNSServerSearchOrder(["220.192.0.130", "220.192.32.103"]);
        /* 修改后需要重新查询才能生效 */
        arrAdp.push(arrIP.join("\r\n"));
        enmPing.moveNext();
}
WSH.Echo(arrAdp.join("\r\n\r\n"));
function GetVBArray(arr)
{
        return arr !== null ? new VBArray(arr).toArray() : [];
}[/php]另存为IP.jse或者IP.js,双击运行。
風雲工作室
=========
广告位招租(做在老百姓眼皮底下的广告)

使用道具 举报

超级版主

5毛发一贴,千里不留行。

Rank: 8Rank: 8

注册时间
2007-2-27
威望
3584
阅读权限
150
积分
8408
帖子
3597
精华
12
UID
65747
状态
当前离线
发表于 2008-5-2 11:51:30 |显示全部楼层 |串个门|加好友|打招呼|发消息 |
查看详细资料

回复 #5 Rimifon 的帖子

厉害厉害 R版这个太厉害了

使用道具 举报

Rank: 4

升级  93.8%

注册时间
2006-12-8
威望
837
阅读权限
50
积分
969
帖子
100
精华
0
UID
61629
状态
当前离线
发表于 2008-5-2 17:28:59 |显示全部楼层 |串个门|加好友|打招呼|发消息 |
查看详细资料 QQ 查看个人网站

回复 #5 Rimifon 的帖子

学习了! 
选择+坚持+自信+努力
确定目标 选择方法 实施规划~

使用道具 举报

Rank: 1

升级  36%

注册时间
2006-8-25
威望
10
阅读权限
10
积分
18
帖子
10
精华
0
UID
55784
状态
当前离线
发表于 2008-5-2 20:21:17 |显示全部楼层 |串个门|加好友|打招呼|发消息 |
查看详细资料
老大` 你这也太强了吧`

惊天地,泣鬼神啊!!!

长见识了!

使用道具 举报

Rank: 4

升级  9%

注册时间
2003-2-20
威望
309
阅读权限
50
积分
545
帖子
325
精华
1
UID
428
状态
当前离线
发表于 2008-5-2 20:22:18 |显示全部楼层 |串个门|加好友|打招呼|发消息 |
查看详细资料
R真是我的偶像。
收藏
我只会点简单的js问题

使用道具 举报

Rank: 6Rank: 6

升级  77.3%

注册时间
2007-12-28
威望
869
阅读权限
70
积分
2546
帖子
971
精华
0
UID
81082
状态
当前离线
发表于 2008-5-2 23:53:44 |显示全部楼层 |串个门|加好友|打招呼|发消息 |
查看详细资料
netsh interface ip set address
wsh.run
cmd.exe /c
回到以前自由自在的生活中~~~

使用道具 举报

超级版主

新手上路

Rank: 8Rank: 8

注册时间
2004-5-22
威望
3336
阅读权限
150
积分
6241
帖子
3329
精华
3
UID
11749
状态
当前离线
发表于 2008-5-3 02:01:53 |显示全部楼层 |串个门|加好友|打招呼|发消息 |
查看详细资料 查看个人网站

查看计算机硬件信息

[php]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"));
}[/php]

[ 本帖最后由 Rimifon 于 2008-5-3 02:04 编辑 ]
風雲工作室
=========
广告位招租(做在老百姓眼皮底下的广告)

使用道具 举报

Rank: 4

升级  3.4%

注册时间
2006-7-10
威望
207
阅读权限
50
积分
517
帖子
206
精华
0
UID
54198
状态
当前离线
发表于 2008-5-4 12:20:05 |显示全部楼层 |串个门|加好友|打招呼|发消息 |
查看详细资料

回复 #5 Rimifon 的帖子

还是R版厉害,谢谢了!收藏研究中!

我想要作的是:在一个网吧或者机房有很多设备,如果要一一输入会很麻烦,我想利用JS的便捷功能来实现双击IP库中的某个IP就可以将这个IP替换成当前设备的TCP/IP设置,所以不用考虑安全啦!

[ 本帖最后由 monfs 于 2008-5-4 13:04 编辑 ]

使用道具 举报

Rank: 2

升级  55.33%

注册时间
2007-11-6
威望
43
阅读权限
20
积分
133
帖子
39
精华
0
UID
78423
状态
当前离线
发表于 2008-5-4 16:37:25 |显示全部楼层 |串个门|加好友|打招呼|发消息 |
查看详细资料
你可以去看一下MSDN里面,有个脚本专栏,里面全是使用脚本解决windows问题的示例,而且他们还提供了自动生成WMI脚本的工具,直接点点就可以生成不少非常有用的脚本,应该有你想要的

使用道具 举报

Rank: 6Rank: 6

升级  13%

注册时间
2006-6-20
威望
344
阅读权限
70
积分
1260
帖子
351
精华
0
UID
53369
状态
当前离线
发表于 2008-5-5 08:48:13 |显示全部楼层 |串个门|加好友|打招呼|发消息 |
查看详细资料
学习了:loveliness:
天下风云出我辈,一入江湖岁月催。
皇图霸业谈笑中,不胜人生一场醉。
提剑跨骑挥鬼雨,白骨如山鸟惊飞。
尘事如潮人如水,只叹江湖几人回。

使用道具 举报

Rank: 2

升级  22%

注册时间
2004-8-26
威望
44
阅读权限
20
积分
83
帖子
24
精华
0
UID
16119
状态
当前离线
发表于 2008-5-7 00:03:18 |显示全部楼层 |串个门|加好友|打招呼|发消息 |
查看详细资料

WSH

wsh应该脱胎于原来的bat,借鉴linux中的shell,只是wsh中采用了jscript和vbscript语法引擎,通过wsh内置的对象与操作系统发生交互。

使用道具 举报

您需要登录后才可以回帖 登录 | 加入无忧

Archiver|手机版|无忧脚本 ( 苏ICP备05080427号 )|值班电话:027-62300445  

GMT+8, 2012-2-7 21:32 , Processed in 0.065596 second(s), 14 queries , Gzip On, Memcache On.

Powered by Discuz! X2

© 1999-2011 无忧脚本

回顶部