看了DOS下联网启动盘的帖子。有些问题如扫描多种网卡并加载驱动,输入ip地址等似乎没有很好地解决。我找到了一个renda的DOS下联网启动盘,用了一下,觉得不错。现把说明贴出来,供朋友们参考。
我在 autoexec.bat 里看不懂它的扫描多种网卡并加载驱动和输入ip地址的方法,期盼版主几各位大家给予分析。在此多多拜托。谢谢
来源
http://spaces.msn.com/davidrin/blog/cns!BC68D429D6B9F757!739.entry?_c=BlogPart
config.sys:
; DOSNETX/7 DOS CONFIG File for MSDOS 7.10
; (c) 2007, David Rin <
rendaa@gmail.com>
; Rev. 6.70216
DEVICE=\DOS\HIMEM.SYS /TESTMEM:OFF /SHADOWRAM:OFF
DEVICE=\DOS\EMM386.EXE NOEMS I=B000-B7FF VERBOSE
INCLUDE=DOSCFG
DEVICEHIGH /s=\DOS\IFSHLP.SYS
DEVICEHIGH /s=\DOS\ELTORIT0.SYS /D:EMUCD$
INSTALL=\DOS\XMSDSK.EXE v: 16000 /t /y
DOS=HIGH,UMB,AUTO
SHELL=COMMAND.COM /p /e:1024 /f
STACKSHIGH=9,256
BUFFERSHIGH=30,0
FILESHIGH=30
FCBSHIGH=4,0
LASTDRIVEHIGH=Z
SWITCHES=/F /N
INCLUDE=DOSAPP
SET PATH=\DOS
MENUITEM=DOSOPT,DOS only, with utilities cached to ramdisk
SUBMENU =DATDRV,Data Storage support (CDROM/USBHD/UDMA etc.)
MENUITEM=NETOPT,Network support only
SUBMENU =NETCD ,Network + IDE/USB/PCMCIA CDROM support
SUBMENU =NAKED ,Clean boot for update bios (edit.com available)
MENUDEFAULT=NETCD,5
DEVICEHIGH /s=\DOS\RAMFD.SYS
INCLUDE=DOSOPT
DEVICEHIGH /s=\DOS\IDECDROM.SYS /D:IDECD$
SET DSKDEV=IDE
INCLUDE=DOSOPT
INCLUDE=RAMFD
DEVICEHIGH /s=\DOS\USBASPI.SYS /norst /w /r /v /f
DEVICEHIGH /s=\DOS\USBCD.SYS /D:USBCD$
DEVICEHIGH /s=\DOS\DI1000DD.SYS
DEVICEHIGH /s=\DOS\IDECDROM.SYS /D:IDECD$
SET DSKDEV=USB
INCLUDE=DOSOPT
INCLUDE=RAMFD
DEVICEHIGH /s=\DOS\SBP2ASPI.SYS
DEVICEHIGH /s=\DOS\NJ32DISK.SYS
DEVICEHIGH /s=\DOS\CDSDMINI.SYS /D:FWCD$
DEVICEHIGH /s=\DOS\IDECDROM.SYS /D:IDECD$
SET DSKDEV=FW
INCLUDE=DOSOPT
INCLUDE=RAMFD
;Read %RAMDRIVE%\NET\README.TXT for driver parameters.
DEVICEHIGH /s=\DOS\PCMI80CL.SYS /P1 /QA
DEVICEHIGH /s=\DOS\STATPCDM.SYS /D:PCMCD$
SET DSKDEV=PCM
INCLUDE=DOSOPT
DEVICEHIGH /s=\DOS\XDMA.SYS
MENUITEM=IDE ,IDE CD
MENUITEM=USB ,USB CD/HD/FD + IDECD
MENUITEM=FW ,1394/Firewire CD/HD + IDECD
MENUITEM=PCM ,PCMCIA CD + IDECD
MENUITEM=XDMA,UltraDMA HDD
SUBMENU =MENU,<<< Return
MENUDEFAULT=MENU
INCLUDE=DOSOPT
INCLUDE=MYNET
MENUITEM=NIDE,IDE CD
MENUITEM=NUSB,USB CD/HD/FD
MENUITEM=NFW ,1394/Firewire CD/HD
MENUITEM=NPCM,PCMCIA CD
SUBMENU =MENU,<<< Return
MENUDEFAULT=NIDE,3
INCLUDE=IDE
INCLUDE=MYNET
INCLUDE=USB
INCLUDE=MYNET
INCLUDE=FW
INCLUDE=MYNET
INCLUDE=PCM
INCLUDE=MYNET
MENUITEM=DOSCMD,DOS in conventional memory
MENUITEM=NKDHIM,DOS + HIMEM
MENUITEM=NKDXMS,DOS + HIMEM + EMM386 (XMS only)
MENUITEM=NKDEMS,DOS + HIMEM + EMM386 (XMS/EMS)
SUBMENU =MENU,<<< Return
MENUDEFAULT=NKDXMS
DEVICE=\DOS\HIMEM.SYS /TESTMEM:OFF /SHADOWRAM:OFF
DOS=HIGH,UMB,AUTO
SET CONFIG=DOSCMD
DEVICE=\DOS\HIMEM.SYS /TESTMEM:OFF /SHADOWRAM:OFF
DEVICE=\DOS\EMM386.EXE NOEMS VERBOSE
DOS=HIGH,UMB,AUTO
SET CONFIG=DOSCMD
DEVICE=\DOS\HIMEM.SYS /TESTMEM:OFF /SHADOWRAM:OFF
DEVICE=\DOS\EMM386.EXE RAM VERBOSE
DOS=HIGH,UMB,AUTO
SET CONFIG=DOSCMD
;Read %RAMDRIVE%\NET\README.TXT for details of customization.
;Of couse, you won't find it there in clean-boot modes.
SET MODS=ASK
autoexec.bat:
: DOSNETX/7 DOS AUTOEXEC Batch File
: (c) 1997-2007, David Rin <
rendaa@gmail.com>
: Rev 6.70216
:
@if .%debug%==. echo off
if .%rtd%==. set rtd=C:
for %%f in (A: A:\DOS) do if .%comspec%==.%%f\COMMAND.COM set rtd=A:
if .%0==. if exist \DOS\DOSKEY.* lh /s \DOS\DOSKEY /insert /b:2048
if .%0==. if exist %rtd%\dos\nul path %rtd%\DOS
if not .%0==. goto _bat_chain
if not .%config%==.DOSCMD goto _normal
if exist \DOS\DOSMACRO.BAT call \DOS\DOSMACRO.BAT
goto _end
:_normal
if exist EMMQXXX0 set lh=lh /s
set bootstage=yes
if .%debug%==. ctty nul
if .%ramdrive%==. if exist \DOS\DOSDRIVE.BAT call \DOS\DOSDRIVE.BAT
ctty con
if not .%ramdrive%==. goto _ramd_ok
echo RAMDRIVE is not available!
goto _eof
:~apath
if .%3==. goto _eof
if not exist %3\nul goto _eof
set @@=%path%
set path=%3
set @=%path%
set path=%@@%
set @@=
for %%f in (%path%) do if .%%f==.%@% goto ~0_apath
path %path%;%@%
:~0_apath
set @=
goto _eof
:~expand
if .%3==. goto _eof
if not exist %3 goto _eof
copy %3 $.exe>nul
echo A|$.exe>nul
del $.exe>nul
goto _eof
:~extract
if .%3==. goto _eof
if not exist %3 goto _eof
for %%f in (%path% .) do if exist %%f\extract.exe goto ~extr1
goto _eof
:~extr1
extract /y /a /e %3 >nul
goto _eof
:_ramd_ok
if .%bootstage%==. goto _end
if .%debug%==. ctty nul
if exist %rtd%\AUTOEXEC.BAT copy %rtd%\AUTOEXEC.BAT %ramdrive%\ /y>nul
ctty con
if exist %ramdrive%\AUTOEXEC.BAT %ramdrive%\AUTOEXEC.BAT
:_bat_chain
if .%1==.: if not .%2==. goto %2
if .%debug%==. ctty nul
\DOS\FINDRAMD
if not .%RAMDRIVE%==. set temp=%RAMDRIVE%\
if exist EMMQXXX0 if exist %ramdrive%\dos\peruse.* %lh% peruse /x384
set netdir=%rtd%\NET
goto _dont_cache_netdir
set netdir=%ramdrive%\_
if exist %netdir%\*.* echo y|del %netdir%>nul
if not exist %netdir%\nul goto _mk_tmp
echo y|del %netdir%>nul
:_mk_tmp
if not exist %netdir%\nul md %netdir%
if exist %rtd%\net\nul copy %rtd%\net %netdir% /y>nul
:_dont_cache_netdir
ctty con
set DOSTSR=DO MD MC
if exist %ramdrive%\DOS\DOSDRIVE.BAT call %ramdrive%\DOS\DOSDRIVE.BAT : ~dostsr
%ramdrive%
if not exist \net\nul md\net
path %ramdrive%\dos;%ramdrive%\net
set temp=%ramdrive%\NET
if .%rtd%==.C: for %%f in (dos net) do call %0 : ~apath %rtd%\%%f
set netdrive=O:
if exist %netdrive%\nul subst %netdrive% /D>nul
subst %netdrive% %ramdrive%\>nul
%netdrive%
cd \net
if .%debug%==. ctty nul
for %%f in (%netdir%\DOSNETX!.exe %netdir%\DRVP*.exe) do call %0 : ~expand %%f
for %%f in (%netdir%\DOSNETX!.cab %netdir%\DRVP*.cab) do call %0 : ~extract %%f
set apcd=
if .%cdrom%==. goto _drv_cd_not_ready
for %%f in (%cdrom%) do call %0 : ~apcd_ck %%f
:_drv_cd_not_ready
for %%f in (.DOS .COM .EXE .BAT .INI .SYS .CFG .IN_ .PWL .CAB .) do if exist %netdir%\*%%f copy %netdir%\*%%f . /y>nul
if .%netdir%==.%rtd%\NET goto _no_tmp
if not exist %netdir%\nul goto _no_tmp
echo y|del %netdir%>nul
if exist %netdir%\nul rd %netdir%>nul
:_no_tmp
set netdir=
for %%f in (DOSNETX!.* DRVP*.EXE DRVP*.CAB) do if exist %%f del %%f
ctty con
:call %0 : ~remap
if .%MODS%==. goto _no_net
set _err=
if exist MSNET.BAT call MSNET.BAT
goto _exit
:~apcd_ck
if .%3==. goto _eof
if not .%apcd%==. goto _eof
dready %3
if errorlevel 2 goto _eof
%comspec% /F /C if not exist %3\NDISDRV\DRVPAK.bat if not exist %3\NDISDRV\DRVP*.EXE goto _eof
set apcd=%3
for %%f in (%apcd%\NDISDRV\DRVP*.exe) do call %0 : ~expand %%f
for %%f in (%apcd%\NDISDRV\DRVP*.cab) do call %0 : ~extract %%f
if exist %apcd%\NDISDRV\DRVPAK.BAT call %apcd%\NDISDRV\DRVPAK.BAT
goto _eof
:_no_net
if exist %ramdrive%\DOS\SMARTDRV.* %ramdrive%\DOS\SMARTDRV /q
:_exit
cd %rtd%\
cd %ramdrive%\
cd %netdrive%\
%ramdrive%
set bootstage=
dready c:
if not errorlevel 2 for %%f in (DOS NET) do call %0 : ~apath c:\%%f
if .%rtd%==. goto _end
if not .%_err%==. goto _end
if not errorlevel 2 if exist %rtd%\AUTORUN.BAT %rtd%\AUTORUN.BAT
if not %rtd%==C: goto _apcd_chain
dready d:
if not errorlevel 2 if exist D:\AUTORUN.BAT D:\AUTORUN.BAT
goto _end
:~remap
if .%rfd%==. set rfd=A:
if not exist $RAMFDD$ goto _eof
if not .%rfd%==.A: goto _eof
if exist %ramdrive%\DOS\REMAPFDD.* %lh% %ramdrive%\DOS\REMAPFDD B: /D:0
for %%f in (C D E F G H I J K L M N O P Q R S T U V W X Y Z) do call %0 : ~setrfd %%f:
goto _eof
:~setrfd
if .%3==. goto _eof
if .%rfd%==.+ echo Remap logical drive %3 to floppy drive %rtd%...
if .%rfd%==.+ set rfd=%3
if not .%rfd%==%3 if %3==%ramdrive% set rfd=+
goto _eof
:~apcd_chain
if .%3==. goto _eof
dready %3
if not errorlevel 2 if exist %3\AUTORUN.BAT %3\AUTORUN.BAT
goto _eof
:_apcd_chain
if not .%apcd%==. call %0 : ~apcd_chain %apcd%
if not .%apcd%==. goto _end
for %%f in (%cdrom%) do call %0 : ~apcd_chain %%f
:_end
set _err=
set bootstage=
:_eof