TOP > Up > Today


Date:  Mon, 20 Aug 2012 07:46:52 +0900
From:  no@ann.co.jp
Subject:  [pasml 345152] Re: バッチファイルから INI ファイルを読み込み処理
To:  pasml@ann.co.jp
Message-Id:  <201208192246.q7JMkqPg003473@ns.pas2.jp>
X-Mail-Count: 345152

名前: ZONE BBSから
質問:http://pasokoma.jp/50/lg509951#509957
携帯:http://pasokoma.jp/m?num=509957&ope=v
--
KMADMINさんは No.509956「Re:バッチファイルからINIファイルを読み込み処理」で書きました。

>pandora様のコードを応用すればと思っているのですが、

その通りです。
FOR文はいろいろなことができるために理解するのはちょっと難しいです。
でも、理解しないと先に進めません。

一切のエラー処理を省いたBATファイルを作成しましたので、動作確認のうえ
エラー処理を肉付けしてください。
--- ここから ---
@ECHO OFF
REM * iniファイルの「SETPARA=」行の値を変数(ini_SETPARA)に取り込む
FOR /F &quot;tokens=1,2 usebackq delims==&quot; %%a IN (`type &quot;Setup.ini&quot;`) DO ( 
    IF %%a == SETPARA SET ini_SETPARA=%%b
)
REM * 変数(ini_SETPARA)の値に対応する
REM * iniファイルの「SETPARA0〜9=」行の値を変数(ini_SETPARAN)に取り込む
FOR /F &quot;tokens=1,2 usebackq delims==&quot; %%a IN (`type &quot;Setup.ini&quot;`) DO ( 
    IF %%a == SETPARA%ini_SETPARA% SET ini_SETPARAN=%%b
)
REM * ファイルをコピー
COPY D:\APSETUP\INI\%ini_SETPARAN% C:\XXXX\INI
--- ここまで ---

肉付けが必要なエラー処理&対策
・iniファイルの存在有無チェック
・iniファイル内に「SETPARA=」行が存在しない場合や値が範囲外時の処理
・iniファイル内に「SETPARA0〜9=」行が存在しない場合や値が範囲外時の処理
・フォルダPATHに半角スペースが含まれる場合の対策
・ファイル名に半角スペースが含まれる場合の対策
・コピー元ファイルの存在有無チェック
・コピー元に同名ファイルが存在した場合の処理
・その他
--
== 掲示板URL: http://pasokoma.jp/bbs ==
   配信の停止: http://pasokoma.jp/taikai
   本メールマガジンへの返信はなさらないで下さい
== 投稿はパソコン困りごと掲示板でお願い致します ===
    

TOP > Up > Today