ေၾကာ္ျငာေလးေတြကို Click လုပ္ေပးဖို႕ ေတာင္းဆိုအပ္ပါတယ္။

BAT File သင္ခန္းစာ (၅)

index
ဒီေန႔ေတာ့ If ကဲ့သုိ႔ပင္ Condition စစ္ေသာ Choice Command အေၾကာင္းရွင္းၿပေပးပါ့မယ္။ ဒီတစ္ေခါက္ Choice Command အေၾကာင္းကေတာ့ ဘာသာၿပန္
ထားၿပီးေတာ့ က်ေနာ့္ေရးပံုေရးနည္းဘက္ကို နည္းနည္း ၿပန္ေၿပာင္းထားပါတယ္။ မူရင္းေရးသားသူကေတာ့ ဘယ္သူမွန္းမသိေပမယ့္ CHOICE နဲ႔ ပတ္သက္ၿပီး
ေတာ့ သူေရးထားတဲ့ မူရင္းကေတာ့ ေတာ္ေတာ္ေကာင္းတယ္ဗ်… အကယ္လို႔ မ်ား Choice နဲ႔ ပတ္သက္ၿပီး နားမလည္ခဲ့ရင္ေတာ့
က်ေနာ့္ ရဲ႕ ဘာသာၿပန္ညံ့ဖ်င္း
မႈနဲ႔ အတူ မူရင္းေရးသားပံုေရးသားနည္းကေန က်ေနာ့္ေရးပံုေရးနည္းကို ေၿပာင္းလိုက္တဲ့အခါမွာၿဖစ္လာတဲ့ လိုအပ္ခ်က္ေၾကာင့္ မေကာင္းၿခင္းလို႔သာ မွတ္ယူေပးပါ။
CHOICE command ကို မေၿပာခင္ က်ေနာ္တုိ႔ Error Level အေၾကာင္းကို အရင္ေဆြးေႏြးၾကည့္ပါမယ္။
Error Level ဆုိတာကေတာ့ Program က သူၿပီးဆုံးသြားတဲ့ အခ်ိန္မွာ သတ္မွတ္လိုက္တဲ့ အခ်က္တစ္ခ်က္ပါ။
ဥပမာ… က်ေနာ္တုိ႔ ဟာ bat file တစ္ခုကို run ေနစဥ္မွာ Program မၿပီးဆုံးေသးဘဲနဲ႔ CTRL+C ကို ႏွိပ္လုိက္လို႔ ရပ္သြားရတဲ့ ၿဖစ္ရပ္မ်ိဳးမွာ ဆုိရင္ Error Level
ကို 3 လို႔ သတ္မွတ္ပါတယ္။ အဲလိုမဟုတ္ဘဲနဲ႔ Program ဟာ သူ႔ လုပ္ငန္းအားလုံး ၿပီးဆုံးသြားလို႔ ပံုမွန္ ၿပီးဆုံးၿခင္းမ်ိဳးနဲ႔ ဘာအေႏွာက္အယွက္မွ မရိွဘဲၿပီးခဲ့ရင္
ေတာ့ Error Level ကို 0 ဟု သတ္မွတ္ပါတယ္။ Error Level ေတြဟာ သူ႔ဟာနဲ႔သူ သီးၿခားရပ္တည္ေနတဲ့ အခါမ်ိဳးမွာေတာ့ ဘာမွ ၿပႆနာမရိွနုိင္ေပမယ့္ (သို႔)
အသံုးမ၀င္နုိင္ေပမယ့္ သူတုိ႔ကို CHOICE ဒါမွမဟုတ္ IF ERROR LEVEL တုိ႔နဲ႔ တြဲလိုက္တဲ့ အခါမွာေတာ့ သူတုိ႔ဟာ အရမ္းကို ****** လာပါလိမ့္မယ္။
CHOICE command ကေတာ့ Keyboard ကေနၿပီးေတာ့ user က ရိုက္ထည့္တာေတြကို လက္ခံၿပီးေတာ့ key တစ္ခုခု ႏွိပ္လိုက္တဲ့ အခါမွာ error level ကို
ထုတ္ေပးမွာၿဖစ္ပါတယ္။ သူ႔ရဲ႕ ေရးပုံေရးနည္းကေတာ့ CHOICE [string][/C:keys][/S][/N][/T:key,secs]အဲဒီ့ Code ေတြတစ္ခုခ်င္းဆီရဲ႕ အဓိပၸါယ္ကို ရွင္းၿပ
ပါ့မယ္။ string ဆုိတဲ့ အပိုင္းက သိပ္ေတာ့အေရးမၾကီးပါဘူး။ သူက CHOICE command run တဲ့အခါမွာ လိုခ်င္တဲ့ စာသားတစ္ခုခုကို ၿပသေပးယံုပါ။
/C:keys ဆုိတာကေတာ့ User က ရိုက္လုိက္မယ့္ ၿဖစ္နုိင္ေခ်ရိွတဲ့ key ေတြကို ညႊန္းတာပါ။ အကယ္လို႔သာ key ေတြကို ၾကိဳတင္မသတ္မွတ္ထားဘူးဆုိရင္ေတာ့
သူ႔ရဲ႕ default က Y/N ၿဖစ္ပါတယ္။ ေအာက္က ဥပမာေလးကို ေလ့လာၾကည့္ရေအာင္ပါ….
CHOICE /C:A1T0
အေပၚက Code မွာ ဆုိရင္ေတာ့ က်ေနာ့္တို႔ဟာ A ၊ 1 ၊ T နဲ႔ 0 တုိ႔ကို ၿဖစ္နုိင္ေခ်ရိွတဲ့ key ေတြအေနနဲ႔ သတ္မွတ္ထားပါတယ္။ Program ကို run လုိက္တဲ့
အခ်ိန္မွာ User က သာ က်ေနာ္တုိ႔ မသတ္မွတ္ထားတဲ့ key တစ္ခုခုကို ႏွိပ္လုိက္မယ္ဆုိရင္ေတာ့ User အေနနဲ႔ တီ ဆုိတဲ့ အသံေလးၾကားရမွာၿဖစ္ၿပီးေတာ့
Program ကေတာ့ သူလိုအပ္တဲ့ အေၿဖမေရာက္လာမခ်င္း ဆက္ run ေနပါလိမ့္မယ္။ ဒါဆုိရင္ေတာ့ /C:keys အပိုင္းကို သိပါၿပီ။
ေနာက္တစ္ခုအေနနဲ႔ /S ကိုရွင္းၿပေပးပါ့မယ္။ သူကေတာ့ က်ေနာ္တုိ႔ ခုနက /C:keys အပိုင္းမွာ ၾကိဳတင္သတ္မွတ္ထားတဲ့ key ေတြကို case sensitive အၿဖစ္
သတ္မွတ္တာပါ။ ထုိသို႔သတ္မွတ္ခ်င္းအားၿဖင့္ က်ေနာ္တို႔ Program ဟာ A (အၾကီး) ဟုသတ္မွတ္ထားပါက user မွ A (အၾကီး) ကို လက္ခံမရရိွမၿခင္း အလုပ္မ
လုပ္ေတာ့ပါဘူး။ ထုိ႔ေၾကာင့္ A ခ်င္းတူတာေတာင္မွ အလုပ္မလုပ္တဲ့ အၿဖစ္ကို ေတြ႔ရိွရမွာပါ။
/N အေၾကာင္းရွင္းၿပပါ့မယ္။ /N ဆုိတာကေတာ့ က်ေနာ္တုိ႔ ခုနက code ကို run တုန္းမွာ ေတြ႔ရမယ့္ [A,1,T,0]? ဆုိတာ ကို မေတြ႔ရေတာ့ဘဲနဲ႔ အမည္းေရာက္
ေၿပာင္ကိုဘဲေတြ႔ရမွာပါ။ ထုိသို႔ /N ခံၿခင္းအားၿဖင့္ က်ေနာ္တုိ႔ ဘာကို ၾကိဳတင္သတ္မွတ္ထားတယ္ဆုိတာ ကို မသိရေတာ့ပါဘူး။ ၿပီးေတာ့ စိတ္ၾကိဳက္စာသားနဲ႔လည္း
 User ဆီကေန key တစ္ခုစီကို လက္ခံနုိင္ပါလိမ့္မယ္။ ဥပမာ…
@echo off
echo Please Choose Yes[Y] or No[N]
CHOICE /C:YN /N
အဲဒါဆုိရင္ေတာ့့ Please Choose Yes[Y] or No[N] ဆုိၿပီးေတာ့ သာ အမဲေရာင္ screen ေပၚမွာ ၿပသေပးမွာပါ။
/N ပါတာမပါတာကို ခုထိနားမလည္ရင္ေတာ့ အေပၚက ဥပမာမွာ /N ၿဖဳတ္ၿပီးသာ run လုိက္ပါ။ သိရပါလိ့မ္မယ္။
/T:key အေၾကာင္းဆက္လက္ ရွင္းၿပေပးပါ့မယ္။ သူကေတာ့ default key ကို ရည္ညႊန္းပါတယ္။အကယ္လို႔မ်ား က်ေနာ္တုိ႔ ၾကိဳတင္သတ္မွတ္ထားတဲ့ key တစ္ခုခု
ထဲက user က တစ္ခုမွ မေရြးဘဲ ဒီတုိင္းထားရင္ အခ်ိန္ကန္႔သတ္ခ်က္ တစ္ခုကို ေ၇ာက္တဲ့ အခါမွာေတာ့ /T နဲ႔ program ကို default key တစ္ခုကို ေရြးခုိင္းလုိက္
တာပါ။ ဥပမာအားၿဖင့္….
CHOICE Choose Browser /C:NI /T:I=.5
အေပၚက Code ကို run မယ္ဆုိရင္ေတာ့ Choose Browser[N,I]? ဆုိၿပီးၿပမွာပါ.. အကယ္လို႔ User က ၅ စကၠန္႔အတြင္း ဘယ္ key ကိုမွ မေရြးခဲ့ဘူးဆုိရင္ေတာ့
Program က default အေနနဲ႔ I ကို ေရြးလုိက္မွာပါ။
ဒီေလာက္ဆုိရင္ေတာ့ Choice Command ကို အၾကမ္းဖ်င္းသိေလာက္ၿပီထင္ပါတယ္။ ေနာက္ေန႔မွာေတာ့ CHOICE နဲ႔ အတူ IF ERROR LEVEL ဆုိတဲ့
Command ကို အသံုးၿပဳၿပီးေတာ့ error level သတ္မွတ္တဲ့ ပံုစံကို ရွင္းၿပေပးပါ့မယ္။ ဒီေန႔ေတာ့ CHOICE နဲ႔ တင္ရပ္ထားပါ့မယ္။ CHOICE နဲ႔ ပတ္သက္ၿပီး
အိမ္မွာ ကိုယ့္ဟာကိုယ္ .bat ေလးေတြေရးၾကည့္ၾကေပ့ါ… ေပ်ာ္ဖို႔ေကာင္းပါတယ္။
ေစာင့္ေမွ်ာ္ဖတ္ရႈေပးသူမ်ားကို ေက်းဇူးတင္လ်က္…
ေၾကာ္ျငာေလးေတြကို Click လုပ္ေပးဖို႕ ေတာင္းဆိုအပ္ပါတယ္။