这样做纯TCP/IP的也不难!!!

这是PT版本的一些好东西,这样我们做纯TCP/IP的也不难了

Config.sys

device=himem.sys /testmem:off
device=a:\emm386.exe ram /y=C:\WINDOWS\emm386.exe
dos=high
device=a:\ramdrive.sys 128 /E
device=a:\ifshlp.sys
shell=a:\command.com /p /e:2048

Autoexec.bat

@echo off
cls
a: >nul
cd \winboot >nul
win.bat

Win.bat

@echo off
set comspec=a:\command.com>nul
snapshot /S /B:d /m:124>nul
setmdir /m /r:a:\winboot>nul
set windir=C:\WINDOWS
setenv.com
net initialize>nul
net start netbind>nul
tcptsr.exe>nul
tinyrfc.exe>nul
nmtsr.exe>nul
net config <enter.txt>nul
net logon %USER% /savepw:no /y <enter.txt>nul
net use C: \LILY\WIN98 /y>nul
net use d: \LILY%USER% /y>nul
set system=WIN98
startwin.exe
path=c:>nul
path=c:>nul
@if exist c:\autoexec.bat call c:\autoexec.bat
set comspec=c:\command.com
set tmp=C:\WINDOWS\TEMP
set temp=C:\WINDOWS\TEMP
set windir=C:\WINDOWS
set winbootdir=C:\WINDOWS
path=%PATH%;C:\WINDOWS;C:\WINDOWS\Command>nul
C:\WINDOWS\net time \LILY /set /yes>nul
d:\startwin.bat

以下这可能对您有帮助!
http://www.ostart.net/forum/showthread.php?threadid=34096

不错,大家多试试
里面有几个文件,在哪儿找

那几个与TCP有关的应是MSCLIENT 3.0中的吧

http://www.wown1.com/j_helmig/Doscltcp.htm

我也启动成功了,但常规内存占用太多,后来没有继续实验!

msclient 3.0 哪儿有的下?

ftp://ftp.microsoft.com
上有,华教2K终端启动镜像里也有,RPL目录里也有.这几个文件倒不少见的.

可是我没有最小注册表及PROTOCOL。INI
只好跟据经验手动改了改最小注册表及PROTOCOL。INI
不过我还是只做到
。。。
tcptsr.exe>nul
tinyrfc.exe>nul
nmtsr.exe>nul
以上还一切正常,并可以在无盘机上PING到服务器IP了.


net config <enter.txt>nul
这一步就出错了,说什么无效的服务名。
我也不知道在最小注册表里应用什么来代替*ndishlp,把它改成TCPIP,
它说无效的服务名,改成NETBUTI,它说协议无法加载.

谁能发给我EBXPT版的最小注册表以及PROTOCOL.INI ???
不胜感谢
x6256@sina.com

最小注册表中*nwlink换tcpdrv.dos,nemm.dos
protocol.ini与dos下的一样

谢谢
我已把tcpdrv.dos,nemm.dos加在最小注册表中的网络实模式中
不过是顺序相反.

我再去试试。


想请教一下.如不用LITENET的QUALCNX.COM那个%USERNAME%变量是如何取得的呢…???

多谢各位
实模下已连好,不过98下还有点问题。

又试了大半天,还是有些问题:
是不是应该这样:
protocol.ini

[protman$]
DriverName=protman$
Priority=TCPIP$

[rtsnd$]
DriverName=rtsnd$

[TCPIP$]
DriverName=TCPIP$
DisableDHCP=1
IPAddress0=192 168 2 30
SubNetMask0=255 255 255 0
NBSessions=6
Bindings=rtsnd$

注册表:
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Network\Real Mode Net]
“netcard”=“.dos”
“preferredredir”=“vredir”
“transport”=“tcpdrv.dos,nemm.dos”

什么问题?

各有各的方法。
我的是在cmos中设用户编号。http://www.ostart.net/pn/viewtopic.php?p=173606

如把启动盘A盘在启动WIN。COM之前虚拟掉之后,
启动时提示有:
registry files is was not found, registry services may
be inoperative for this session.
xms cache problem . registry services may be inoperative
this session.
这个提示一闪以后,就自动启动到WIN98到桌面,不过无法加载各种硬件驱动
如显卡声卡好象还有网卡,我觉得好象网卡的保护模式
没有转换过来,不过WIN98却能启动,而且基本可以使用,

就算我挂上上传时的硬盘,从无盘启动,它也这样,就是说不存在转换模式
之程断网时找不到文件的问题。

这是实模式下的图形WIN98???

此时我的WIN。BAT
@echo on
a:
cd\winboot
set comspec=a:\command.com

snapshot /S /B:d /m:124
setmdir /m /r:a:\winboot
net initialize
net start netbind
rem NETBIND
set windir=C:\WINDOWS

rem setenv.com

tcptsr.exe
tinyrfc
nmtsr

net config <enter.txt
net logon guest /savepw:no /y <enter.txt

c:
md windows
cd windows
md system
if not exist c:\windows\system\rtl8139.sys copy /y a:\netdrv*.* c:\windows\system.
if not exist c:\command.com copy /y a:\command.com c:\command.com

a:

net use c: \TM\EBXWIN98 /y
net use d: \TM\user01 /y
set system=EBXWIN98
set windir=C:\WINDOWS
rem startwin.exe
path=c:
path=c:
echo Step 9…
@if exist c:\autoexec.bat call c:\autoexec.bat
set comspec=c:\command.com
set tmp=C:\WINDOWS\TEMP
set temp=C:\WINDOWS\TEMP
set windir=C:\WINDOWS
set winbootdir=C:\WINDOWS
path=%PATH%;C:\WINDOWS;C:\WINDOWS\Command
C:\WINDOWS\net time \TM /set /yes
rem d:\startwin.bat

pause
rem d:
rem regedit /l:d:\system.dat /l:d:\user.dat d:\tcpip.reg
rem c:
net use a: \tm\user01 /y
pause

实模式之后WIN。COM之前我还没有把REG文件输入到无盘用户
SYSTEM。DAT 、USER。DAT中
(不知道应该输入什么,上面这个TCPIP。REG应是什么内容?)

如果我把A:\suboot\最小注册表拷入到用户目录中的SUBOOT中
则无盘启动时在重启,感觉是在转换网卡模式时重启的,中间无提示。

在很久以前,我已成功的制作成了WIN2000底下的纯TCPIP系统,但是现在我又改回IPX了,虽然TCPIP系统中的技术问题大部分都解决了,但是由于MSCLIENT3.0中所带的TCPIP1.0的先天不足--占用常规内存太多,必须要RAM的支持,无盘系统中读写文件的速度远比IPX慢,包括启明星也是慢得像牛一样,所以暂时放弃。(唉,这东东,到底是NT4中带的玩意儿,就电脑领域而言,它已经是太古老了!

有几点明显弊端:
由于要RAM支持,则必需在Config.sys文件中加入:
Device=Emm386.exe Ram /y=C:\Windows\Emm386.exe
而Emm386.exe会有在有些主板加载不了的现象,导致内存管理不良而使系统无法继续进入。

IP地址只能在Protocol.ini中的下一段中指定(用DHCP除外)
[TCPIP$]
DriverName=TCPIP$
DisableDHCP=1
IPAddress0=192 168 x xxx
SubNetMask0=255 255 255 0
NBSessions=6
Bindings=rtsnd$
所以必须有一丁点儿编程知识,以自动修改此配置文件,不然会存在IP地址冲突的现象,而此时还没有初始化好TCP,所以无法连接Server,你的IP地址(一般是根据机器号才确定)最好的方法是写入机器硬体当中。
这有好多地方可以写,最令人容易想到的是CMOS和网卡这两个地方。
各有千秋,写在CMOS中则因Aword、Ami、Phoenix等等版本的差异而受限。写在93c46芯片则受网卡的限制,像我目前只能成功的写RTL8139、RTL8029、SIS900这三种网卡,而其它几种待选网卡则由于没有找到相关参数,暂时没有办法写入。不过我还是喜欢写到网卡中间,虽然有部分网卡没有找到参数,但是有时间的话还是可以从跟踪它们的设置程序入手呢!:slight_smile:

。。。还有很多。。。有那么久没有做了,一下子也就想不起来了,等大家碰到什么问题,再贴出来,看看我碰到过没有,不过我还是建议大家不要太迷信这玩意儿了,用来做研究还是有点意思,但是说到其它…

 不过,话说回来,说不定大家运气比我好,可能不会碰上什么问题,到时候也希望大家把经验共享出来,如果真如我说的那样,MS的TCPIP1.0先天不足的话,我想只好等我有时间再作纯TCPIP系统时,自己从底层做起,把TCPIP的实模式下的Driver重编(谁叫MS不再更新这东东呢?),才能从根本上解决问题,否则毫无意义。

大家真正要钻研这方面,可以看看《TCPIP协议详解》,它分为三卷(卷一:协议; 卷二:实现; 卷三:TCP事务协议 HTTP NNTP和UNIX域协议。

[quote=“ChenPeng”]
在很久以前,我已成功的制作成了WIN2000底下的纯TCPIP系统,但是现在我又改回IPX了…,但是由于…quote]

我真地佩服您的实力和毅力,不过有一点值得商榷,“必须要RAM的支持”—这是肯定的,不然到哪里执行引导步骤啊,但EMM386.exe绝对不是必须,我想除了himem.sys,command.com,io.sys外,还没有哪个文件是必须的,只要加载了himem.sys,完全可以用ramdrive.sys呀,还有xmsdsk.exe,都行呀。
同时我也十分同意您说TCPIP的慢,在DOS下还不快,何况是并不兼容的win下,TCPIP本身好象也比较庞大,我相信还没什么协议能超过IPX去。
说起您提到的那本书,我上个月倒是刚下了,好大呀,pdf的有54.5M,令我用猫拉了半天的。
这本书在东江论坛有连接,哪位想要可以去那里找。

问题是如果不加载EMM386。EXE的话
在DOS下用TCP以后,常规内存就剩下不到335K了,
少于335K,WIN。COM就无法运行。

在DOS下进行文件操作时显然TCP协议是最慢的,
但纯TCP有它特别的的用处,速度是次要的,玩不玩游戏也无所谓。
也不是很在意它能多网卡路由啊什么的。
无盘不只能做教学和游戏,还有其它用途。

好象微软的DOS下的TCP就只有1.0测试版,实在是编得不怎么样。

Emm386是可以不用的,内存的问题要自己仔细的调试,一定可以做到335K以上的。
areyong:你在进入win.com前少了一句
setmdir /m /r:c:\windows
所以找不到注册表了。