关键字: 迅闪  Pubwin EP  bxp4.1  pubwin  bxp

您现在正在浏览:首页>游戏技术>
网吧内网联机游戏解决
时间:2007-11-14 00:46:14  『来源:网吧黄页』  『作者:郁闷宝宝』  『点击:

  在日常的网吧工作中,经常会遇到这样的问题:红警,星际连不了网,在排除是游戏版本的因素外,绝大部分都是由于内部网络号冲突所至。内部网络号:它是IPX协议的网络地址,在IPX/SPX协议中,IPX协议是用来对通过互联网络的数据包进行路由选择和转发,它指定一个无连接的数据报,相当于TCP/IP协议簇中的IP协议;

[http://www.6iyn.com]

  有关该协议的相关知道就不详细介绍了,本文的重点是向大家介绍一种自动设置内部网络号(即IPX网络地址)的方法以解决需要内部网络号连机的问题.内部网络号的修改工具在网上较多,但完美实用的较少。如网上的2K-XP_IPX这个工具,运行之后得手动打开网络连接,对“本地连接”进行“禁用”再“启用”的操作后,才可以生效,如此一来,既增加了网管的工作量同时也易给客人留下不好的印象。(当然,你也可以在换系统完GHOST后修改内部网络号。但在无形中增加了网管工作量,用本文介绍的方法如果转换下方式可以在做好系统后马上更换内部网络号),利用批处理实现按机号更改内部网络号并实现重新禁用和启用网络连接就可以做到正常的需要用到IPX网络地址连机游戏的正常连网了。批处理和解释如下: [http://www.6iyn.com]

@echo off
for /f "tokens=3" %%i in ('reg query HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\winmgmt /v start') do if %%i==0x2  goto aa
sc config winmgmt start= auto
sc start winmgmt
rem 因为我做系统的时候一般会把winmgmt服务关闭,所以这句的意思主要是做判断。
:aa
ipconfig /all | find /I "IP Address">IP_.txt
rem 不区分大小写检查ipconfig中含有ip address字符的字串并输出到IP_.txt文件中。
if errorlevel==1 goto NO
rem 这里主要还是检测命令是否成功完成,如果返还不成功为1时跳转到:NO.
for /f "tokens=15" %%M in (IP_.txt) do set IP=%%M
if errorlevel==1 goto NO
rem 检测IP_.txt文件取其第15个变量并赋予(在for命令中如果没有指定delims以什么条件作为量的区分那么默认就是空格)变量名为IP(for的命令参数解释请在黄页论坛找我发过的双关批处理教程),if errorlevel是命令返还值。上面已经介绍。
echo REGEDIT4 >reg.reg
echo [HKEY_LOCAL_MACHINE\SYSTEM\ControlSet00\Services\NwlnkIpx\Parameters] >>reg.reg [转载自云南网吧技术联盟]
rem 注册表的导出,比较简单。
echo "VirtualNetworkNumber"=dword:00000%IP:~10% >>reg.reg
rem 从上面的注册表导出的VirtualNetworkNumber赋予从上面for命令中读取到的变量ip,并排除前10位(比如你在上面一条命令中提取出来的ip地址是192.168.0.98,那么所取得的ip变量应该是98)
regedit /s reg.reg
rem 不提示导入上面的注册表
if errorlevel==1 (goto NO ) else ( goto YES)
:YES
start /w \\Wg\nbtstat$\VBS\ifmon.exe  //这里后面会做一个详细介绍。
del IP_.txt
del reg.reg
rem 删除上面命令所提取出来的文件。
netsh interface set interface name="本地连接" admin=DISABLED
netsh interface set interface name="本地连接" admin=ENABLED
rem 停止本地连接DISABLED,启用本地连接ENABLED。
start /i /min D:\game\Ra2\Ra2.exe
rem 在新环境下面启动需要运行的游戏,如果/i参数不加情况下,dos窗口无法退出,请留意!
exit
:NO
del IP_.txt
echo 修改内部网络号失败,请按任意键退出!
pause
exit
[转载自云南网吧技术联盟]

  在上面的批中ifmon.exe其实就是windows2003中的ifmon.dll,因为在XP系统中不支持netsh interface set interface name命令扩展,所以此命令是无法正常运行的,所以只能提取2003系统目录下面同文件替换到XP系统中,这里要特别注意; 你可以直接将以上源程序用记事本保存为BAT文件,做成自解压包或者利用bat2exe软件转换成exe格式的文件放在服务器上,解压到本地再运行(自解压的制作可以参考我以前的系统优化文章里面有详细介绍),因为运行此批处理会断开一下网络,如果直接在服务器运行的话会造成批处理中部分命令无法运行。

[http://www.6iyn.com]

  总结:在日常的网吧工作中,很多繁琐的工作都可以用一种简单的方法去解决,只要你愿意去想,愿意动手去尝试,当然方法是有很多种的,如果你有更好的方法,请上论坛发出与我们分享。
[http://www.6iyn.com]

免责声明:本站刊载此文不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。对本文有异议,请联络本站! 转载要求:文章作者及来源信息必需保留。转载之图片、文件,链接请不要盗链到本站地址,且不准打上各自站点的水印。