投稿者 でいびす 日時 2001 年 3 月 19 日 17:07:23: [DG-000940]
回答先: バッチファイルのCopying TMP... 投稿者 でいびす 日時 2001 年 3 月 18 日 02:54:06
皆さんありがとうございます。
突き詰めていくとlha.exe が吐いているようです。
でもなぜか、WIN上での自作マシン限定で表示されます。
同じバッチプログラムをコンパックPresarioや、NEC98系で実行しても
皆さんおっしゃるように表示されません。
う〜ん、原因不明??です。
へったくそなバッチで恐縮ですが参考までにソースを載せておきました。
ありがとうございました。
- bootlog.bat -
@echo off
:■"BOOTLOG.BAT"について...----------------------------------------[Japanese]-
:利用目的 :実行した履歴を30件まで保存します。
: :重要なWindowsレジストリをバックアップします。
:対応OS :MS-DOS ver.5.0 以降
:使用上の注意 :フリーソフトフォルダのlha.exeを使用します。
: :lhaにより出力されたファイルで日時を特定します。
: :autoexec.bat内でコールさせて使用して下さい。
: :バックアップは実行5回につき1度行います。
:-----------------------------------------------------------------------------
:{setting}
: ====== ユーザ環境設定 ======
: ------------------------------------------------------------
set outdrv=c:
: [ログファイルの保存場所(ドライブ名)を記載します ]
: ------------------------------------------------------------
set outdir=\DATA\BOOTLOG
: [ログファイルの保存場所(フォルダからのパス)を記載します ]
: ------------------------------------------------------------
set lhaexe=
: [lha.exeのある場所を記載します。パスが通っていれば空白可]
: ------------------------------------------------------------
set winpath=c:\windows
: [ウインドウズのある場所をフルパスで記載します ]
: ------------------------------------------------------------
set regbackup=0
: [0:通常設定 1:常時バックアップ 2:バックアップしない ]
: ------------------------------------------------------------
: ======== 固定設定 =======
set orgpath=%path%
set path=%path%;%lhaexe%
: -------------------------
:{direct_mode}
if "%1" == "/b" set regbackup=1
if "%1" == "/B" set regbackup=1
:{main}
:{dir_check}
%outdrv%
if not exist %outdir%\con md %outdir% >nul
if "%regbackup%" == "2" goto {bootlog_rec}
if not exist %outdir%\COUNTER\con md %outdir%\COUNTER >nul
:{counter_rec}
cd %outdir%\COUNTER
if exist BOOTEX04.BLF set regbackup=1
if exist BOOTEX04.BLF del BOOTEX04.BLF >nul
if exist BOOTEX03.BLF ren BOOTEX03.BLF BOOTEX04.BLF
if exist BOOTEX02.BLF ren BOOTEX02.BLF BOOTEX03.BLF
if exist BOOTEX01.BLF ren BOOTEX01.BLF BOOTEX02.BLF
lha a -m -n2 BOOTEX01.BLF C:\AUTOEXEC.BAT >nul
if "%regbackup%" == "1" del BOOTEX0?.BLF >nul
:{bootlog_rec}
cd %outdir%
if exist BOOTUP30.BLF del BOOTUP30.BLF >nul
if exist BOOTUP29.BLF ren BOOTUP29.BLF BOOTUP30.BLF
if exist BOOTUP28.BLF ren BOOTUP28.BLF BOOTUP29.BLF
if exist BOOTUP27.BLF ren BOOTUP27.BLF BOOTUP28.BLF
if exist BOOTUP26.BLF ren BOOTUP26.BLF BOOTUP27.BLF
if exist BOOTUP25.BLF ren BOOTUP25.BLF BOOTUP26.BLF
if exist BOOTUP24.BLF ren BOOTUP24.BLF BOOTUP25.BLF
if exist BOOTUP23.BLF ren BOOTUP23.BLF BOOTUP24.BLF
if exist BOOTUP22.BLF ren BOOTUP22.BLF BOOTUP23.BLF
if exist BOOTUP21.BLF ren BOOTUP21.BLF BOOTUP22.BLF
if exist BOOTUP20.BLF ren BOOTUP20.BLF BOOTUP21.BLF
if exist BOOTUP19.BLF ren BOOTUP19.BLF BOOTUP20.BLF
if exist BOOTUP18.BLF ren BOOTUP18.BLF BOOTUP19.BLF
if exist BOOTUP17.BLF ren BOOTUP17.BLF BOOTUP18.BLF
if exist BOOTUP16.BLF ren BOOTUP16.BLF BOOTUP17.BLF
if exist BOOTUP15.BLF ren BOOTUP15.BLF BOOTUP16.BLF
if exist BOOTUP14.BLF ren BOOTUP14.BLF BOOTUP15.BLF
if exist BOOTUP13.BLF ren BOOTUP13.BLF BOOTUP14.BLF
if exist BOOTUP12.BLF ren BOOTUP12.BLF BOOTUP13.BLF
if exist BOOTUP11.BLF ren BOOTUP11.BLF BOOTUP12.BLF
if exist BOOTUP10.BLF ren BOOTUP10.BLF BOOTUP11.BLF
if exist BOOTUP09.BLF ren BOOTUP09.BLF BOOTUP10.BLF
if exist BOOTUP08.BLF ren BOOTUP08.BLF BOOTUP09.BLF
if exist BOOTUP07.BLF ren BOOTUP07.BLF BOOTUP08.BLF
if exist BOOTUP06.BLF ren BOOTUP06.BLF BOOTUP07.BLF
if exist BOOTUP05.BLF ren BOOTUP05.BLF BOOTUP06.BLF
if exist BOOTUP04.BLF ren BOOTUP04.BLF BOOTUP05.BLF
if exist BOOTUP03.BLF ren BOOTUP03.BLF BOOTUP04.BLF
if exist BOOTUP02.BLF ren BOOTUP02.BLF BOOTUP03.BLF
if exist BOOTUP01.BLF ren BOOTUP01.BLF BOOTUP02.BLF
lha a -m -n2 BOOTUP01.BLF c:\autoexec.bat >nul
if not "%regbackup%" == "1" goto {close}
:{reg_backup}
echo ======= BOOTLOG.BAT ver.3.0 (C) Samydavis ========
echo Windowsレジストリをバックアップしています...
echo =====================================================
if not exist %winpath%\win.ini goto {no_win}
attrib -r -h %winpath%\system.dat
attrib -r -h %winpath%\user.dat
if exist %winpath%\system.dat lha a -m -n2 BOOTUP01.BLF %winpath%\system.dat >nul
if exist %winpath%\system.dat echo system.dat をバックアップしました。
if exist %winpath%\user.dat lha a -m -n2 BOOTUP01.BLF %winpath%\user.dat >nul
if exist %winpath%\user.dat echo user.dat をバックアップしました。
lha a -m -n2 BOOTUP01.BLF %winpath%\system.ini >nul
echo system.ini をバックアップしました。
lha a -m -n2 BOOTUP01.BLF %winpath%\win.ini >nul
echo win.ini をバックアップしました。
attrib +r +h %winpath%\system.dat
attrib +r +h %winpath%\user.dat
echo ========================
echo 正常に完了しました...
echo ========================
goto {close}
:{no_win}
echo.
echo Windowsに必要なファイルがありません。
echo バックアップは行いませんでした。
goto {close}
:{close}
set outdrv=
set outdir=
set path=%orgpath%
set lhaexe=
set orgpath=
set regbackup=
set winpath=
-end of file-