バッチファイルの内容
------------------------------------------------------------------------------------
@echo off
cls
rem メニュー選択画面
:menu
echo ****************************
echo * キー入力でメニュー選択 *
echo ****************************
echo.
echo 1.自宅環境(有線LAN・ADSL)
echo 2.モバイル環境(Bluetooth DUN設定)
echo 3.モバイル環境(Bluetooth PAN設定)
echo.
echo 99.終 了
echo.
set /p choice="現在の環境を上記番号より選択して下さい:"
rem 番号選択後の制御フロー
if "%choice%"=="1" (goto homelan)
if "%choice%"=="2" (goto btdnu)
if "%choice%"=="3" (goto btpan)
if "%choice%"=="99" (goto end)
goto error
:homelan
rem 自宅環境(有線LAN・ADSL) 選択時の制御
echo 1.自宅環境(有線LAN・ADSL)
rem モバイル環境(Bluetooth DUN設定)
:btdnu
echo 2.モバイル環境(Bluetooth DUN設定)
rem モバイル環境(Bluetooth PAN設定)
:btpan
echo 3.モバイル環境(Bluetooth PAN設定)
rem エラー時の制御
:error
cls
echo 入力エラー!:選択肢以外の番号が入力されました。正しい番号を再度入力して下さい。
goto menu
rem 終了時の制御
:end
exit
------------------------------------------------------------------------------------
上記のコードは、持ち歩き用に使っているPCでWindowsのログオン時に起動させる処理をコントロールするためにネット上の情報を元に勉強がてら自分で書いています。(あと、ちなみにDOS関連の知識はほとんどありません。)
batファイルで保存し、DOSプロンプトでテストをしていました。
IMEはオフにし、番号選択の「1」「2」「3」を10キーボードから入力すると、errorラベルに飛んでしまい、こちらが想定している正しい処理に飛びません。(ちなみに、「99」と入力したときは正しく処理されいています。)
どこにコーティング上のミスがあるのか判別がつかないため、ミスを犯しているポイントを教えていただけると幸いです。
また、カテゴリーを変更したほうがいいなどのアドバイスがありましたら、誘導していただけると幸いです。
どうかよろしくお願いしますm(__)m
No.1ベストアンサー
- 回答日時:
バッチ処理は正常に動作しています
分岐処理後に動作を停止する命令が無いだけです
例えば
条件分岐でA,B,ENDの分岐とします
バッチ処理の流れが
main
入力
条件分岐
Aの処理
Bの処理
エラー処理
END処理
とした場合、Aの処理の最後に処理を停止する命令がなければBの処理⇒エラー処理と進んでしまいます
試しに、END処理以外の条件処理の後にgoto menuを付け加えて試して見てください
:homelan
rem 自宅環境(有線LAN・ADSL) 選択時の制御
echo 1.自宅環境(有線LAN・ADSL)
goto menu
rem モバイル環境(Bluetooth DUN設定)
:btdnu
echo 2.モバイル環境(Bluetooth DUN設定)
goto menu
rem モバイル環境(Bluetooth PAN設定)
:btpan
echo 3.モバイル環境(Bluetooth PAN設定)
goto menu
こんな感じで
回答ありがとうございます。
回答のように処理を停止する内容(テスト中のため、一時的にmenuへ飛ぶようにしました。)を追記したところ、errorラベルに飛ぶことなく動作するようになりました。
私の想定だと処理分岐後、echo 「選択したメニュー名の表示」で処理が停止するものだと思っていましたが、そうでもなかったのですね… ^^; 勉強になりました。
これでテストを継続できます。即答ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- ルーター・ネットワーク機器 echoshow8の音声をBluetoothを介してパソコンで出力するやり方を教えて下さい。 3 2023/04/03 17:09
- その他(プログラミング・Web制作) 単純なコマンドプロンプトが動きません。 2 2022/04/19 15:21
- UNIX・Linux Linuxのbash環境下です。 1 2022/11/27 12:31
- PHP 入力した部分を表示させたまま(保持)するにはどうすれば良いでしょうか? 1 2023/01/25 11:14
- Windows 10 再起動後 Pinが使用できず、PC(windows11)にサインインできない 3 2022/08/30 20:53
- 確定申告 e-Taxってどうやって使うんですか? 3 2023/03/07 18:39
- Visual Basic(VBA) VBA 参照先で選んだファイルをコピーし、出力先に別名で保存したい 8 2022/05/13 20:37
- その他(生活家電) Amazon Echo 独立運用は可能か? 2 2022/08/06 21:11
- その他(プログラミング・Web制作) ログインシェル時のSHELL環境変数 1 2022/06/08 19:21
- 防犯カメラ・監視カメラ・小型カメラ 見守りカメラとしてecho show 常時接続 高齢の親がいる実家と、離れてくらす自分の家の双方に 2 2023/05/19 06:50
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・プリン+醤油=ウニみたいな組み合わせメニューを教えて!
- ・タイムマシーンがあったら、過去と未来どちらに行く?
- ・遅刻の「言い訳」選手権
- ・【大喜利】【投稿~11/12】 急に朝起こしてきた母親に言われた一言とは?
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・好きな「お肉」は?
- ・あなたは何にトキメキますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・【お題】NEW演歌
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・ハマっている「お菓子」を教えて!
- ・【大喜利】【投稿~11/1】 存在しそうで存在しないモノマネ芸人の名前を教えてください
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・つい集めてしまうものはなんですか?
- ・自分のセンスや笑いの好みに影響を受けた作品を教えて
- ・【お題】引っかけ問題(締め切り10月27日(日)23時)
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・【大喜利】【投稿~10/21(月)】買ったばかりの自転車を分解してひと言
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
突然カーソルが手の形に…
-
Wordを開くとカーソルが真ん中...
-
テキストボックスのカーソル位...
-
壁紙が拡大されて表示される
-
power pointで画像が表示できま...
-
クリッピングマスクの枠の外を...
-
エクセルの図形で弧を書く方法
-
バツ印をつけるには??(ワード)
-
Office365 のExcelでオブジェク...
-
EXCEL 一部のオブジェクトだ...
-
JW 文字の後ろを白く着色したい
-
指定範囲内で図形等を削除する...
-
jw_cadで消えない線があります...
-
in Designで一部のページにのみ...
-
エクセルで図形やワードアート...
-
図形とテキストボックスの全部...
-
google spread sheet で拡大表...
-
Excel組織図を横に展開する方法...
-
Photoshopでパスを同じ形のまま...
-
EXCEL2013 VBA ListBox 未選択
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
突然カーソルが手の形に…
-
テキストボックスのカーソル位...
-
Wordを開くとカーソルが真ん中...
-
秀丸エディタでマウスカーソル...
-
power pointで画像が表示できま...
-
壁紙が拡大されて表示される
-
【Win】DOS バッチファイルの処...
-
リアルプレーヤーが常駐してし...
-
Adobe Illustrator CSでプリン...
-
YahooのHPのポップアップCMを動...
-
Windowsセキュリティ 警告表示...
-
キーボードの入力
-
文字入力の時のカーソルの形が...
-
インデザインCS6のキーボー...
-
ATOKが学習しない
-
一太郎の画面
-
フリーソフトJW CADを使いたい
-
言語バーのJP/EN切替えボタンの...
-
ワードでレポート
-
Win10の隠れている[ファイル名...
おすすめ情報