VerUp10.lzh バージョンアップファイル配布CMD 桐V8 一括処理 Copyright (c) 2000-2001 by Ogo mailto:ogou@icity.or.jp ●はじめに 桐V8 一括処理サンプル として、バージョンアップファイル配布CMD をアップロードします。 この一括処理は、既存の桐システムのバージョンアップ版を開発した時 に、それを配布するためのものです。 自分の手元にたった1つだけ存在する唯一無二のシステムなら、随時思 うがままに改造を続けることができますが…… ・システムが複数存在する場合や、 ・既に稼働しているシステムに直接の改造を行わず(だって運用中だし) 別機械で修正版を作成して、運用中のシステムに修正完了版を適用し ようとする場合、 ・不特定多数に配布し使われているシステムを個々にバージョンアップ してもらう場合、 バージョンアップ版への差し替えは面倒臭い作業です(単純なファイル 上書きコピーでは既存のデータ内容が消えてしまうから)。 私の場合、仕事の関係でそのような機会が多く、バージョンアップ差分 を書庫( *.lzh )にして渡すことが多いので、その適用を誰でも簡単に 行えるようにするため、この汎用バージョンアップファイル配布CMD を作成しました。 どなたかのお役に立てば幸いです。 ●インストール このバージョンアップファイル配布CMDは定常的に使うものではない ので、固定的な「インストール作業」はありません。 とにかくこのアーカイブを解凍したら、次のファイルが出て来ます。 $Choice.WFM (処理選択用ダイアローグ) $Confirm.WFM (結果確認用ダイアローグ) $Display.WFM (処理経過表示ダイアローグ) $VerUp.TBL (バージョンアップ作業用ファイル) VerUp.CMD (バージョンアップ実行ファイル) $Files.Txt (バージョンアップ対象一覧表) $Init.Txt (インストール先初期値) VerUp.Txt (この説明ファイル) Before.lzh (バージョンアップ前サンプル) After.lzh (バージョンアップ用サンプル) Before.lzh の中には以下のファイルが入っています。 Version.BMP サンプル.TBL サンプル.WFM 以上、タイムスタンプは 2000/12/31, 00:00 After.lzh の中には以下のファイルが入っています。 Version.BMP サンプル.TBL サンプル.WFM 以上、タイムスタンプは 2001/01/01, 17:00 ●試してみましょう とりあえず、Before.lzh の中の3ファイルを取り出して下さい。 次に、C:\桐_Win\Test というフォルダを作成して、上記3ファイルを そこに移動します。 バージョンアップ前のシステムの中身を確認します。 C:\桐_Win\Test\サンプル.WFM をダブルクリックして開きます。 「テキストファイルを読む」は機能しません。 メニュー上部のバージョン表示とか画面色を憶えておきます。 次に、After.lzh の中の3ファイルを取り出して下さい。 取り出した3ファイルは VerUp.CMD 外6ファイルと同一のフォルダに コピーまたは移動します。 ここまで準備ができたら、いよいよ VerUp.CMD をダブルクリックして 一括処理を実行します(もちろん、拡張子 cmd が 桐 Win に関連付け られている必要があります)。 最初に、バージョンアップ前のバックアップのお勧めのダイアローグが 出ます(「確認」コマンドによる単純な Windows 標準のダイアローグ ボックスではありません)。 納得の上で「実行」ボタンを押すと、バージョンアップ前のシステムの 位置を訊ねて来ます(デフォルトは C:\桐_Win\Test です)。 ここで正しくバージョンアップ前のシステムのフォルダを選択して OK ボタンを押すと、バージョンアップが開始されます。 バージョンアップ後には、重複してバージョンアップを行わないよう にするため、作業用のファイルを削除するか否かを訊ねられます このテスト中は削除しない方が面倒がなくていいでしょう。 最後に C:\桐_Win\Test\サンプル.WFM を再びダブルクリックして起動 し、バージョンアップができているか否か確認して下さい。 ●実務で利用する際には(バージョンアップファイルの配布時) 設定ファイルは $Init.Txt と $Files.Txt の2つです。 $Init.Txt には旧バージョンのインストールパスを(予想できる場合) 書いておきます。 ここでの情報は旧バージョンのインストール先を訊ねるダイアローグの 初期値に使われるだけですので、シビアに考える必要はありません。 $Files.Txt には、実際にバージョンアップするファイル名を1ファイル 1行の形式で列記します(サンプル参照)。 これを作るためには、バージョンアップするファイルを1つのフォルダ に集めて、当該フォルダをカレントにした DOS 窓を開き、そのコマンド プロンプトに対して Dir /b > $Files.Txt とすれば、勝手にできあがり ます( $Files.Txt 自身も含まれていますので、その行は削除します)。 $Files.Txt に記載されたファイルは 拡張子が TBL でなければ、単純 上書きコピーされます。 拡張子が TBL の場合に限り、元ファイル(xxx.TBL)を xxx.OLD.TBL に リネームした後に新しい xxx.TBL をコピーして、その後に xxx.OLD.TBL の中身を全て読み込んでデータを継承します(バージョンアップ前と後 で同一項目名のデータのみが引き継がれます。安易な項目名変更は事後 のメンテナンス不能を引き起こします)。 ただし、1つ例外が作ってあって、マスタテーブルの用に、過去テーブル の内容を引き継ぐと意味が無いもの(絶対強制上書きが必要なテーブル) に関しては、 $Files.Txt の中でファイル名の先頭に * (アスタリスク) を付け加えておきます。この場合だけ、このバージョンアッププログラム は、拡張子 TBL であっても、必ずファイルを強制上書きします。 バージョンアップ用のファイルを用意する際は、 TBL ファイルは中身を 空にしておいて下さい(上記の強制上書きさせるマスタ類を除く)。 準備ができたら、以下のファイルを配布します。 $Choice.WFM (処理選択用ダイアローグ) $Confirm.WFM (結果確認用ダイアローグ) $Display.WFM (処理経過表示ダイアローグ) $VerUp.TBL (バージョンアップ作業用ファイル) VerUp.CMD (バージョンアップ実行ファイル) $Files.Txt (バージョンアップ対象一覧表) $Init.Txt (インストール先初期値) & 実際のバージョンアップ用更新ファイル群 圧縮ファイルにする際は、自己解凍書庫にしておいて、解凍後に自動的 に VerUp.CMD を実行するようにしておけばベストかもしれません。 ●最後に この「バージョンアップファイル配布CMD」は Ogo の著作物です。 Ogo は これのバグ訂正やバージョンアップの義務を一切負いませんし、 ユーザーサポートの義務も負いません。 この一括処理を使った結果、生じた損害に関しては Ogo は一切関知し ません。ご自分の責任とリスクにおいてお使い下さい。 この一括処理を使った結果、生じた喜びや感謝や感想は、動作環境と 共に Ogo に伝えてもらえれば、 Ogo は大喜びするでしょう。(^_^) この一括処理を配布するなら、この説明書も添付して下さい。 不特定多数の方への配布でなければ、再譲渡は自由です。 物好きにも転載等をしたい人がいれば、事前に Ogo まで E-Mail でご 連絡下さい。 Ogo mailto:ogou@icity.or.jp URL=http://www.icity.or.jp/usr/ogou/ --------------------------------------------------------------------------- 蛇足 1. これは「フリーソフトウェア」です。代金支払いの義務は全くありません。 ただしよっぽど気にいった方がいらしたら、寄付金をいただくのにやぶさか ではありません。 その際には下記まで送金下さい。領収証が必要なら送付も可です。 もちろん金額に要望なぞはありません。 郵便振り替え 口座番号: 01320-2-15048 加入者名: Office Ogo 2.某社や某社のように、普及した頃合を見計らって、後になってライセンス を強制するような姿勢は人間の信義を踏みにじる最低の行為だと Ogo は 考えています。 また、オンラインその他で「相互扶助」精神でフリーソフト(オープン・ ソースに限定せず)公開やボランティア行為を行なっている人々の精神を 貶めようようとしたり、その行為を妨害しようとしたりするMS社の行動 も顰蹙を買ってしかるべきだと Ogo は考えています。 心当たりのある会社の関係者は、この一括処理を利用することを自発的 にご辞退下さるよう、 Ogo は強く望んでいます。