Портал г.Новоселица Черновицкой области, Украина; Портал м.Новоселиця Чернівецької області, Україна
Назад на статью

@echo off
cls
rem выбирается диск, на котором находятся файлы загрузки, в том числе и MSDOS.SYS:
set sys_disk=C:\
rem устанавливается путь к служебным файлам переключателя: 
set dir_select_prg=C:\Tool\Select\
rem показать текущую Windows
@echo .  
@echo .  
@echo .
@echo . 
if exist %dir_select_prg%flagWin1.txt goto sub1
if exist %dir_select_prg%flagWin2.txt goto sub2
@echo *It's current Windows number* >%dir_select_prg%flagWin1.txt
@echo ****************************
@echo * Current Windows number none*
@echo ****************************
 

:sub1
@echo ****************************
@echo * Current Windows number 1 *
@echo ****************************
goto start
:sub2
@echo ****************************
@echo * Current Windows number 2 *
@echo ****************************
goto start

:start
@echo . 
@echo . 
%dir_select_prg%CHOICE.COM /C012 /T0,10 "Windows number (0-don't change) "
if errorlevel=3 goto win2
if errorlevel=2 goto win1
if errorlevel=1 goto endbat
goto endbat

rem ===========================================================
:win2
rem если win2 уже стоит, то не перегружаем снова. Иначе меняем win2 и перегружаем
if exist %dir_select_prg%flagWin2.txt goto endbat
  rem запомним настройки win1 
  @echo Save setting win1
  %dir_select_prg%attrib -r -h -s %sys_disk%msdos.sys
  copy %sys_disk%msdos.sys %dir_select_prg%w1
  copy %sys_disk%autoexec.bat %dir_select_prg%w1
  copy %sys_disk%config.sys %dir_select_prg%w1
  rem copy другую ерунду %dir_select_prg%w1 >nul
  rem меняем win1 на win2
  copy %dir_select_prg%w2\*.* %sys_disk%
  %dir_select_prg%attrib +r +h +s %sys_disk%msdos.sys
  copy %dir_select_prg%flagWin2.txt %sys_disk%
  ren %dir_select_prg%flagWin1.txt flagWin2.txt
  %dir_select_prg%restart.com
  @echo Change Windows to number 2
  goto endbat

rem ===========================================================
:win1 
rem если win1 уже стоит, то не перегружаем снова. Иначе меняем win1 и перегружаем
if exist %dir_select_prg%flagWin1.txt goto endbat
  rem запомним настройки win2
  @echo Save setting win2
  %dir_select_prg%attrib -r -h -s %sys_disk%msdos.sys
  copy %sys_disk%msdos.sys %dir_select_prg%w2
  copy %sys_disk%autoexec.bat %dir_select_prg%w2
  copy %sys_disk%config.sys %dir_select_prg%w2
  rem copy другую ерунду %dir_select_prg%w2 >nul
  rem меняем win2 на win1
  copy %dir_select_prg%w1\*.* %sys_disk%
  %dir_select_prg%attrib +r +h +s %sys_disk%msdos.sys
  copy %dir_select_prg%flagWin1.txt %sys_disk%
  ren %dir_select_prg%flagWin2.txt flagWin1.txt
  %dir_select_prg%restart.com
  @echo Change Windows to number 1
  goto endbat
rem ===========================================================
:endbat
Небольшие пояснения: данный пакетник при загрузке дает выбрать номер копии Windows (а определяет он текущий номер по файлу flagWin[номер Windows].txt), ждет 3 секунды и, если была выбрана иная копия, копирует нужные файлы в резервную папку (W1 или W2 в своей директории). Нужные файлы в данном случае - msdos.sys, autoexec.bat и config.sys. После этого программкой RESTART.COM (из одного из cab-файлов Windows) перегружает компьютер.

Назад на статью