Myanmar IT Resource Forum
Myanmar IT Resource Forum
Myanmar IT Resource Forum

You are not connected. Please login or register

Go to page : 1, 2, 3  Next

View previous topic View next topic Go down  Message [Page 1 of 3]

sHa92

sHa92
Founder



Founder
အမ်ားေတာင္းဆုိလို႔ က်ေနာ္ေရးေပးလိုက္ပါတယ္ခင္ဗ်ာ...
က်ေနာ္ကိုယ္တုိင္လည္း တအားနဲ႔ မကြ်မ္းက်င္သလို ၊ ဒီ Batch File Programming အေၾကာင္းကို ေလ့လာဖူးတာ အလြန္ၾကာခဲ့ၿပီၿဖစ္ပါတယ္။ ယခု ေလ့လာခ်င္ပါတယ္ဟုေၿပာေသာ သူမ်ားရိွေသာေၾကာင့္သာ အခုလို အေၿခခံကအစ ေရးေပးၿဖစ္တာပါ။ အေၿခခံအက်ဆုံးနဲ႔ ကြန္ၿပဴတာစသံုးဖူးတဲ့ သူတစ္ေယာက္ပါ အဆင္ေၿပေအာင္တစ္ခါထဲေရးေပးၾကည့္ပါ့မယ္။ ဒါေပမယ့္ က်ေနာ္ မေလ့လာေတာ့ဘဲ ပစ္ထားတဲ့ ဘာသာရပ္တစ္ခုၿဖစ္ၿပီး အခုမွ ၿပန္ကိုင္လိုက္သလိုၿဖစ္ေနတာေၾကာင့္ မၿပည့္စံုတာမ်ားလည္း ရိွပါလိမ့္မယ္။ က်ေနာ့္ေခါင္းထဲမွာ မွတ္မိတာကိုဘဲ ၿပန္ခ်ေရးမွာၿဖစ္ပါတယ္။ အဆင္မေၿပမႈတစ္စံုတစ္ရာရိွခဲ့ရင္ ခြင့္လႊတ္ေပးၾကပါ။ အားလုံးကို တစ္ခါတည္း အဓိပၸါယ္ေတြ ေၿပာသြားမွာ မဟုတ္ဘဲနဲ႔ ဥပမာေလးေတြနဲ႔ အလ်င္းသင့္သလုိသာ ရွင္းၿပီး တဆင့္ခ်င္းတက္သြားၾကည့္ပါ့မယ္။ က်ေနာ္လည္း တစ္ခါမွမေရးခဲ့ဖူးေတာ့ ဘယ္က ဘယ္လို နားလည္ေအာင္ စရွင္းၿပီးေရးရမယ္မသိလုိ႔ပါ။

ကဲစၿပီး ေဆြးေႏြးၾကည့္ေပးပါ့မယ္။

bat မွာ ပါ၀င္မႈအမ်ားဆုံးနဲ႔ အေၿခခံ အက်ဆုံးေလးေတြကို စၿပီးေဆြးေႏြးၾကည့္ရေအာင္
အေၿခခံအက်ဆုံး command ၃ ခုကေတာ့
(၁) echo
(၂) @echo off/on နဲ႔
(၃) pause စတာေတြဘဲၿဖစ္ပါတယ္

ပထမဆုံးအေနနဲ႔ ဥပမာေလး တစ္ခုေရးၾကည့္ပါမယ္

Code:
@echo off
echo Hello This is a First Program
pause

အဲဒါေလးကို ေစ်းအၾကီးဆုံး Windows Tool တစ္ခုၿဖစ္တဲ့ notepad မွာ ေရးၿပီးေတာ့ test1.bat ဆိုၿပီးသိမ္းလိုက္ပါ။
ၿပီးရင္ေတာ့ Run လုိက္ပါ။ အမဲေရာင္ Screen ထဲမွာ ေအာက္မွာ ၿပထားတဲ့စာသားေလးေတြေပၚလာပါလိမ့္မယ္။

Hello This is a First Program
Press any key to continue...

ခုနက ဥပမာေလးမွာ echo off အစား echo on သံုးၿပီးေတာ့ ဘာမ်ားထူးၿခားမလဲဆုိတာ ေအာက္က Code ေလးကိုစမ္းေရးၾကည့္ရေအာင္

Code:
@echo on
echo Hello This is a First Program
pause
ၿပီးရင္ေတာ့ ခုနကအတုိင္း notepad မွာ ေရးၿပီး test2.bat ဆုိၿပီးသိမ္းၿပီး ၿပန္ Run လုိက္ပါ...
ေအာက္မွာ ၿပထားတဲ့ အတုိင္း ၿမင္ရပါလိမ့္မယ္။

C:\Documents and Settings\User\Desktop>echo Hello This is a First Program
Hello this is a First Program

C:\Documents and Settings\User\Desktop>pause
Press any key to continue...
အဲလိုၿမင္ရပါလိမ့္မယ္။ C:\Documents and Setting\... စတာေတြကေတာ့ တင္ထားတဲ့ Windows ၊ File ဖြဲ႔စည္းပံုေတြေပၚမူတည္ၿပီး ကြဲၿပားပါလိမ့္မယ္။

အခု အေပၚမွာ ခုနကေရးထားတဲ့ Code ေလးေတြကို ရွင္းၿပေပးပါ့မယ္

က်ေနာ္တုိ႔ ဒုတိယေရးလိုက္တဲ့ code မွာဆုိရင္ @echo on ကိုသံုးလိုက္တဲ့ အတြက္ File ထားရာလမ္းေၾကာင္းက Program Code တစ္ခါ Run တုိင္းလာၿပေနပါတယ္။
အကယ္လို႔မ်ား ပထမစစခ်င္းမွာ ေရးခဲ့တဲ့ @echo off ကို သံုးထားမယ္ဆုိရင္ေတာ့ မည္သည့္ လမ္းေၾကာင္းကိုမွ်မေပၚေစဘဲနဲ႔ ကိုယ္လိုခ်င္တဲ့ စာသားကို ရွင္းလင္းစြာေပၚေစမွာၿဖစ္ပါတယ္။
အဲဒါကိုၾကည့္ခ်င္းအားၿဖင့္ @echo on နဲ႔ off ရဲ႕ ၿခားနားခ်က္ကို သိနုိင္ၿပီးေတာ့ @echo off ကို သံုးတာ ပိုေကာင္းတယ္ဆုိတာကို နားလည္သြားမယ္ထင္ပါတယ္။

ေနာက္တစ္ဆင့္အေနနဲ႔ echo အေၾကာင္းရွင္းၿပပါ့မယ္
က်ေနာ္တုိ႔ဟာ ရိုးရိုး စာေၾကာင္းတစ္ေၾကာင္းေလာက္ ကို Program Run တုန္းၿပခ်င္တယ္ဆုိရင္ (ဥပမာ ခုနက Program ထဲကလုိ "Hello this is a First Program" ဆုိတဲ့ simple phrase တစ္ခုေလာက္ကိုဘဲ ၿပခ်င္တယ္ဆုိရင္ေတာ့ echo ကို ေဖာ္ၿပခ်င္တ့ဲစာသားေရွ႕မွာ ထားၿပီးေရးနုိင္ပါတယ္.

အခု pause အေၾကာင္းရွင္းၿပေပးပါမယ္
pause ဆုိတာကေတာ့ ရပ္တာပါ [You must be registered and logged in to see this image.]
batch file ကို run ေနရင္းနဲ႔ ခဏနားခ်င္ရင္ pause ကို သံုးပါတယ္။ သူ႔ကိုသံုးရင္ batch file က က်ေနာ္တုိ႔ ဆီက key တစ္ခုခု မႏွိပ္မခ်င္း အလုပ္မလုပ္ေတာ့ပါဘူး။ key တစ္ခုခုႏွိပ္လိုက္မယ္ဆုိရင္ေတာ့ သူလုပ္စရာရိွတာဆက္လုပ္သြားပါလိမ့္မယ္။ ခုနက Program ၂ ခုမွာ ဆုိရင္ေတာ့ pause ၿပီးေတာ့ ဘာမွ ဆက္မေရးထားလို႔ ဘာအလုပ္မွ ဆက္လုပ္မွာ မဟုတ္ဘဲ program ကေန ထြက္သြားမွာၿဖစ္ပါတယ္။
pause ကို ထပ္မံနားလည္ေစဖို႔ ေအာက္က ဥပမာေလးကို ေလ့လာၾကည့္ပါမယ္

Code:
@echo off
echo Hello Welcome Back
pause
echo I am testing pause function
pause

အဲဒါကို အေပၚက ဥပမာေတြ အတိုင္း Save ၿပီး Run ရင္ေတာ့ အေၿဖအတုိင္းေဖာ္ၿပပါလိမ့္မယ္

Hello Welcome Back
Press any key to continue...
I am testing pause function
Press any key to continue...
အဲဒီ့ Program ေလးကို စမ္းၿပီးရင္ေတာ့ pause ကို နားလည္သြားေလာက္ၿပီထင္ပါတယ္။

အခုေနာက္ထပ္ နည္းနည္း အဆင့္ၿမင့္တဲ့ Command ေတြကို ေလ့လာၾကည့္ရေအာင္
msg နဲ႔ cls အေၾကာင္းကို အရင္ေလ့လာၾကည့္ပါမယ္

အရင္အတုိင္း ဥပမာေလးေတြနဲ႔ ေလ့လာၾကည့္ရေအာင္
Notepad ကို ၿပန္ဖြင့္ၿပီးေတာ့ ေအာက္က Code ေလးေတြကို ရိုက္ထည့္ၾကည့္ပါမယ္....
Code:

@echo off
echo Hello I am back
pause
cls
echo I am testing cls and msg commands
msg * Bye Bye
pause

ၿပီးရင္ေတာ့ test3.bat နဲ႔ သိမ္းၿပီး Run လိုက္ပါ
သူ႔ အေၿဖကေတာ့ ေအာက္ပါအတိုင္းၿဖစ္ပါလိမ့္မယ္

Hello I am back
Press any key to continue...
(မွတ္ခ်က္၊၊ ၊၊ ဒီေနရာ ေရာက္လို႔ အကယ္လို႔မ်ား က်ေနာ္တုိ႔ဟာ သူေၿပာတဲ့ အတုိင္း key တစ္ခုခုကို ႏွိပ္လိုက္မယ္ဆုိရင္ program က cls ဆုိတဲ့ code ရဲ႕ အလုပ္ကို ဆက္လုပ္မွာ ၿဖစ္ပါတယ္။
အဲလို လုပ္မယ္ဆုိရင္ေတာ့ ခုနက ေပၚခဲ့တဲ့ Hello I am back ဆိုတာၾကီးက ေပ်ာက္သြားမွာၿဖစ္ပါတယ္။
ၿပီးရင္ cls ရဲ႕ ေအာက္က echo ဆုိတဲ့ code အတြက္ အလုပ္လုပ္ပါလိမ့္မယ္...key တစ္ခုခုကို ႏွိပ္လုိက္တယ္လို႔ သေဘာထားၿပီး ဆက္ၾကည့္ၾကရေအာင္....အခုဆုိရင္ေတာ့ ေအာက္မွာ ၿပထားတဲ့ စာသားဟာ သင့္ ရဲ႕ Black Screen ေပၚေရာက္ေနေလာက္ပါၿပီ...)

I am testing cls and msg commands
(ဒီစာေပၚၿပီးတာနဲ႔ message box တစ္ခုက်လာပါလိမ့္မယ္ message box ထဲက စာသားကေတာ့ )

Bye Bye
(ပါတဲ့ ၿပီးရင္ေတာ့ အရင္အတုိင္း)

Press any key to continue...
(ဆုိတာေလးလာမွာပါ)

နားလည္ပါ့မလားေတာ့မသိဘူး... က်ေနာ္လည္း ဘယ္လုိရွင္းရမွန္းမသိလို႔ ရွင္းလင္းခ်က္ေတြကို ကြင္းစ ကြင္းပိတ္ () ထဲထည့္ေရးလိုက္တယ္ေနာ္။
အဲဒီ့ေတာ့ cls နဲ႔ msg ကို ဘယ္လိုနားလည္လုိက္ပါသလဲ....
အစ္ကို ၊ အစ္မ တို႔ ဘယ္လိုနားလည္လဲေတာ့မသိဘူး ၊ က်ေနာ္ေၿပာၿပခ်င္တာကေတာ

-cls ဆုိတာရဲ႕ အရွည္ေကာက္က Clear Screen ပါ [You must be registered and logged in to see this image.] (Java သင္ဖူးတဲ့သူအားလုံးသိသလို ၊ ကြန္ၿပဴတာကိုင္ဖူးရင္ေတာင္ သိပါတယ္) သူက Screen မွာရိွတဲ့ စာသားေတြကို ရွင္းထုတ္ (ဖ်က္ထုတ္) ေပးရံုသက္သက္ပါ။

-msg ဆုိတာကေတာ့ Message ရဲ႕ အတုိေကာက္ၿဖစ္ၿပီးေတာ့ သူက User ကို Message Box တစ္ခုခ်ေပးတာၿဖစ္ပါတယ္။ GUI ေလးနဲ႔ေပါ့...

ေနာက္ထပ္ Command ေတြ အေၾကာင္းဆက္ေလ့လာလုိက္ရေအာင္....

အခုတစ္ခါရွင္းၿပခ်င္တာကေတာ့ rem နဲ႔ start ဆုိတာေလးေတြပါ...
အဲဒါေတြကို စမ္းဖို႔အတြက္ Folder တစ္ခုကို Test ဆုိတဲ့ နာမည္နဲ႔ ေဆာက္ေပးပါ...
ၿပီးရင္ အဲဒီ့ထဲကို စိတ္ၾကိဳက္ ပံုတစ္ပံုထည့္ၿပီးေတာ့ testpic ဆုိတဲ့ နာမည္ေပးလိုက္ပါ...
ေနာက္တစ္ဆင့္အေနနဲ႔ Notepad ကို ဖြင့္ၿပီး ေအာက္မွာရိွတဲ့ Coding ေတြကို ရိုက္ထည့္ေပးပါ...

Code:
@echo off
echo We are testing start and rem
rem title TEST4
start testpic.jpg
pause

ၿပီးရင္ေတာ့ test4.bat ဆိုၿပီး ခုနက Test ဆုိတဲ့ Folder ထဲမွာ save ၿပီး Run လုိက္ပါ. ေအာက္မွာ ၿပထားတဲ့ အတုိင္းၿမင္ရပါလိမ့္မယ္။

We are testing start and rem
Press any key to continue
(key တစ္ခုကို ထပ္ႏွိပ္လုိက္ရင္ ခုနက စိတ္ၾကိဳက္ေရြးၿပီးေတာ့ ထည့္ထားတဲ့ testpic.jpg ကို ၿမင္ရမွာပါ။ ပံုရဲ႕ extension ကိုေကာ ေရြးလိုက္တဲ့ပံုေပၚမူတည္ၿပီး .png ၊ .gif စသည္ၿဖင့္ကြဲပါလိမ့္မယ္)

အဲဒါဆုိရင္ေတာ့ အေပၚက Program ကို နားလည္ၿပီထင္ပါတယ္။
-start ဆုိတာကေတာ့ စိတ္ၾကိဳက္ file တစ္ခုကို ေခၚ run ေပးတာၿဖစ္ပါတယ္။ သူ႔အေနာက္မွာ ဘာမွ မပါဘဲနဲ႔ start သီးသန္႔ ေရးခဲ့မိရင္ေတာ့ ေနာက္ထပ္ အမည္းေရာင္ screen ေပၚလာမွာၿဖစ္ပါတယ္။

-rem ဆုိတာက တကယ္ေတာ့ remark ကို ေခၚတာပါ. ဒါေပမယ့္ သူက bat file run ေနတုန္းမွာ မၿမင္ရတတ္ပါဘူး. (ဘယ္အခ်ိန္ၿမင္ရလည္းေတာ့ က်ေနာ္လည္းမသိဘူး [You must be registered and logged in to see this image.] သိခ်င္ရင္ေတာ့ ရွာလိုက္ၾကေပါ့ေနာ္)

အခု goto ၊ set နဲ႔ if ကို ရွင္းပါေတာ့မယ္...
အခုမွစေလ့လာသူေတြအတြက္ ဒီအပိုင္းက နည္းနည္းစၿပီးေတာ့ ရႈပ္လာမွာၿဖစ္လို႔ေသခ်ာေလး လိုက္လုပ္ၾကည့္ေစခ်င္ပါတယ္။
ေအာက္မွာေပးထားတဲ့ Code ေတြကို Notepad ထဲမွာ ရိုက္ထည့္လုိက္ပါ...

Code:
@echo off
echo This is a Test
echo If you want to do math type 1 and press enter
echo If you want to see a picture type 2 and press enter
set /p option=
if '%option%'=='1' goto :math
if '%option%'=='2' start testpic.jpg (အေပၚမွာတုန္းကလိုဘဲ ၾကိဳက္တဲ့ Extension ကို သံုးနုိင္ပါတယ္။)

:math
echo 2 2
pause
ၿပီးရင္ေတာ့ ခုနက Folder ထဲမွာဘဲ test5.bat ဆုိၿပီး save ၿပီးရင္ Run ပါမယ္။
Run လုိက္ရင္ေတာ့ ေအာက္မွာ ၿပထားတဲ့ အတိုင္းၿပပါလိမ့္မယ္...

This is a Test
If you want to do math type 1 and press enter
if you want to see a picture type 2 and press enter
(ဒီအဆင့္ကို ေရာက္ရင္ေတာ့ 1 နဲ႔ 2 နွစ္ခုထဲက ၾကိဳက္ရာတစ္ခုကို ေရြးနုိင္ပါတယ္)
(၁ ကိုေရြးမယ္ဆုိရင္ေတာ့ ေအာက္က 2 2 ဆုိတာကို ၿပေပးပါလိမ့္မယ္)
2 2
(၂ ကို ေရြးခဲ့မယ္ဆုိရင္ေတာ့ ထည့္ထားတဲ့ စိတ္ၾကိဳက္ပံုေလးထြက္လာပါလိမ့္မယ္...)
(ၿပီးရင္ေတာ့ ထုံးစံအတုိင္း Press any ..... ပါဗ်ာ [You must be registered and logged in to see this image.] )
Press any key to continue...

အေပၚကရလာတဲ့ အေၿဖကို ၾကည့္ပါ ၿပီးရင္ မူရင္း coding ကို ၿပန္ၾကည့္ၾကည့္ပါ...
goto ရဲ႕ အလုပ္လုပ္ပံုကို နားလည္လာပါလိမ့္မယ္။ goto ဆုိတာကေတာ့ Coding ထဲမွာပါမယ့္ နာမည္တစ္ခုေပးထားတဲ့ program အပိုင္းေလးတစ္ခုဆီကို ညႊန္းခ်င္ရင္သံုးပါတယ္။
(အၿခား Programming Language အေနနဲ႔ ဆုိရင္ Function ေတြ Procedure ေတြကို ေခၚတဲ့ အလုပ္လုပ္ပါတယ္)
အေပၚက Program ထဲမွာဆုိရင္ က်ေနာ္တုိ႔ဟာ :Math ဆိုတာကို သံုးခဲ့တာေတြ႕မွာပါ...
အဲဒီ့ Math ေအာက္မွာ ေရးထားတဲ့ ဟာေတြအားလုံးဟာ Math နဲ႔ ဆုိင္တာေတြၿဖစ္ပါတယ္။ အဲဒါဆုိရင္ goto :Math ဆုိၿပီးေရးလိုက္တဲ့ အခါမွာေတာ့ Program ရဲ႕ အလုပ္လုပ္ၿခင္းေတြဟာ Math ဆီကို ေရာက္သြားၿပီး Math ရဲ႕ ကိစၥေတြကို လုပ္ေဆာင္ပါလိမ့္မယ္။ ဒီေလာက္ဆုိ goto အေၾကာင္းသိေလာက္ၿပီထင္ပါတယ္။
(မသိေသးရင္ လည္း ၿပန္ဖတ္ေပါ့. နားမလည္ရင္ေတာ့ တၿခားသူေရးတဲ့စာသာ ဖတ္လိုက္ေတာ့. က်ေနာ္ အရည္အခ်င္းမရိွလို႔ ဒီေလာက္လြယ္တာကို နားလည္ေအာင္မေရးနုိင္တာလုိ႔လည္း သတ္မွတ္လုိက္ပါ။)

ခုနက Coding မွာပါတဲ့ set နဲ႔ if ရဲ႕အေၾကာင္းစရွင္းပါေတာ့မယ္
သူတို႔ ၂ ခုကို ေရာၿပီးရွင္းမွာ ၿဖစ္ပါတယ္... နားလည္ေအာင္ ေသခ်ာၾကည့္ေပးပါ.

set ဆုိတာကေတာ့ တစ္ခုခုကို သတ္မွတ္တာပါ [You must be registered and logged in to see this image.]
သူ႔ကို ေရးရမယ့္ တကယ့္ Syntax ကေတာ့
set variable=[string] ၿဖစ္ပါတယ္။

ဒါေပမယ့္ If နဲ႔ တြဲသံုးခ်င္တဲ့ အခါမ်ိဳးတုိ႔ မွာေတာ့ set X စသည္ၿဖင့္ X တစ္လုံးတည္းကို Variable ေၾကၿငာေလ့ရိွပါတယ္။ အဲလို ေၾကၿငာခဲ့တယ္ဆုိရင္ေတာ့ X ထဲကို ၾကိဳက္တဲ့ Variable ၀င္လာခြင့္ရိွပါတယ္။
Set အေၾကာင္းသိခ်င္ရင္ေတာ့ Run>>cmd>>set /? ဆုိၿပီးရိုက္ထည့္လိုက္ပါ.. ၿပီးရင္ေတာ့ ကိုယ့္ဟာကိုယ္ဆက္ဖတ္နုိင္ပါတယ္ [You must be registered and logged in to see this image.]

ခုနက Program ကို ၿပန္ဆက္ပါမယ္...
က်ေနာ္ တို႔ ခုနက Code ထဲမွာ set /p option= ဆိုၿပီးေတာ့ ေရးခဲ့ပါတယ္
အဲဒါကို set choice ဆုိၿပီးေတာ့ အလြယ္ေၿပာင္းၿမင္ၾကည့္ရေအာင္ (/p ပါရင္ရႈပ္ေနမွာဆုိးလို႔ပါ.. ၿပီးေတာ့ က်ေနာ္ကိုယ္တုိင္လည္း ေမ့ေနတာပါတယ္... ေနာက္ သတိရရင္ ၿပန္ရွင္းေပးမယ္ေလ. မရေတာ့လည္း မရွင္းေတာ့ဘူးေပါ့ [You must be registered and logged in to see this image.])
အေပၚက Program ကိ္ု set choice ဆုိၿပီး ေၿပာင္းေရးလိုက္ၿပီဆုိပါစုိ႔
ဒါဆုိရင္ အကယ္လို႔ က်ေနာ္တို႔သာ 1 ကို ရိုက္မယ္ဆုိရင္ choice ဆိုတဲ့ variable ထဲကို 1 ၀င္သြားပါလိမ့္မယ္။
ၿပီးရင္ေတာ့ ခုနကလိုဘဲ :Math ဆုိတဲ့ အလုပ္ကို ဆက္လုပ္ပါလိမ့္မယ္
အဲဒီ့ ၿပင္ေရးလိုက္တာေလးကို ေအာက္မွာ ၿပန္စမ္းေရးၾကည့္ရေအာင္

Code:
set choice
if '%choice%'=='1' goto :math

ဒါဆုိရင္ေတာ့ အကယ္လို႔ က်ေနာ္တို႔က 1 လုိ႔ရုိက္ထည့္ရင္ choice ထဲကို 1 ၀င္မယ္ ၿပီးရင္ေတာ့ Math ဆုိတဲ့ function အလုပ္ကို လုပ္ပါလိမ့္မယ္.(if မွာပါတဲ့ % ဆုိတာေတြကိုေတာ့ က်ေနာ္ကိုယ္တုိင္ေမ့ေနလို႔ ခ်န္လွပ္ထားခဲ့ပါရေစ) အခုက Basic အပိုင္းဆုိေတာ့ အဲဒါေတြ မသိေသးးလဲ ကိစၥမရိွေသးပါဘူး....
ဒီေလာက္ဆုိရင္ if ၊ set နဲ႔ goto ကို နားလည္သြားၿပီလို႔ထင္ပါတယ္

ဟုတ္ပါၿပီ အခုအခ်ိန္ထိ က်ေနာ္ရွင္းလာသမွ်အားလုံးဟာ အလြယ္တကာ့ အလြယ္ဆုံး အေၿခခံမ်ားၿဖစ္ပါတယ္..
ခုေလာေလာဆယ္ေတာ့ မနက္ ၄ နာရီ ထုိးသြားၿပီၿဖစ္လုိ႔ ဒီေလာက္နဲ႔ ေခတၱရပ္နားပါရေစ... ေနာက္ေန႔မွာ ေတာ့ ဒီ့ထက္ပိုခက္လာၿပီး အသံုးက်လာမယ့္ အပိုင္းေတြကို ဆက္လက္ေရးေပးပါ့မယ္။ မၾကာမီလာမည္ေမွ်ာ္....


>>>> ဤ tutorial သည္ Bat အေၾကာင္း တစ္ခုမွ မသိ၍ အခုမွ စတင္ေလ့လာမည့္ သူမ်ားကို ရည္ရြယ္ေရးသား ၿခင္းၿဖစ္ၿပီး bat အေၾကာင္းတီးမိေခါက္မိရိွၿပီးသူမ်ား အဖို႔ကေတာ့ ေနာက္လာမည့္ အခန္းမ်ားတြင္ ပါ၀င္ႏိုင္မည္ဟုထင္ပါသည္။ ဤ tutorial နွင့္ ပတ္သက္၍ ေ၀ဖန္ပါ ၊ အၾကံေပးပါ ၊ ၿပန္လည္ ေဆြးေႏြးပါ ၊ ယခု ေဆြးေႏြးထားသည္ အထိထဲမွ သိလိုသည္မ်ားရိွလွ်င္ ၊ နားမလည္သည္မ်ားရိွလွ်င္ ေမးပါ ၊ က်ေနာ္ ေကာင္းမြန္စြာ ၿပန္လည္ေၿဖၾကားေပးပါမည္။ လိုအပ္ခ်က္မ်ားကို ေထာက္ၿပေပးမည့္သူမ်ားရိွပါကလည္း ၀မ္းေၿမာက္၀မ္းသာ ၾကိဳဆုိ လက္ခံၿပီး ေက်းဇူးတင္မွာပါ။ သို႔ေပမယ့္ မေကာင္းေၿပာၿပီး သိၿပီးသားတတ္ၿပီးသားကို ေရးေနသည္ဟုထင္ေသာသူမ်ားမွ လာေရာက္ေၿပာဆုိပါက မည္သည့္တုန္႔ၿပန္မႈမ်ိဳးမွ ၿပဳလုပ္မည္မဟုတ္။ ေလ့လာခ်င္ေသာ သူမ်ားအတြက္သာ ေရးသားေပးၿခင္းၿဖစ္၍ အက်ိဳးမရိွဟု ထင္ပါက ဖတ္မေနပါနွင့္ ေက်ာ္သာသြားလုိက္ပါ။ စေရးကတည္းက က်ေနာ္ ေရးခ်င္လြန္းလို႔ အားေနလုိ႔ ေရးရတာလည္း မဟုတ္ပါ။ ေတာင္းဆုိလာတဲ့ သူေတာ္ေတာ္ မ်ားၿပီးေတာ့ ေတာင္းတဲ့သူတိုင္းက က်ေနာ့္ အရင္းႏီွးဆုံး သူငယ္ခ်င္းေတြမို႔ ေရးေပးၿဖစ္သြားတာပါ။ ဆက္လက္ၿပီးေတာ့ bat နဲ႔ ပတ္သက္လို႔ ေတာ္ေတာ္မ်ားမ်ားေရးေပးသြားပါ့မယ္။ အကုန္နီးပါးသိေအာင္ ဒီ tutorial တစ္ခုတည္းနဲ႔ ေရးေပးနုိင္ေအာင္ ၾကိဳးစားသြားမွာပါ။ ဆက္လက္ ေစာင့္ေမွ်ာ္ေပးၾကပါ။ ေနာက္ၿပီးေတာ့ ေၾကာ္ၿငာ၀င္လုိက္ဦးမယ္ [You must be registered and logged in to see this image.] VB.NET 2008 နဲ႔ C#.Net 2008 တုိ႔ကိုလည္း E-Book ၿဖစ္ၿဖစ္ ၊ စာအုပ္ၿဖစ္ၿဖစ္ ထုတ္လုိ႔ရေအာင္ ၾကိဳးစားေနပါတယ္။ e-book ဆုိရင္ေတာ့ အလကားေပးၿဖစ္မယ္။ စာအုပ္ဆုိရင္ေတာ့ က်ေနာ္လည္း သူွေဌးမဟုတ္ေတာ့ အရင္းအတိုင္းေတာ့ ေရာင္းေပးမယ္ဗ်ာ။ E-Book ၿဖစ္ေအာင္ေတာ့ အတတ္နုိင္ဆုံးလုပ္ေပးပါ့မယ္။

ဒီ့ Topic ကို ၿပန္လည္ ေဖာ္ၿပလုိလွ်င္ Myanmar IT Resource Forum အား Credit ေပးပါဟု ေလးစားစြာ ေမတၱာရပ္ခံအပ္ပါတယ္။
ေက်းဇူးတင္စြာၿဖင့္
$ƴǩǾ

http://www.myanmaritresource.info

C0D3R

C0D3R
MITR Master



MITR Master
အရမ္းအသံုး၀င္မယ္႔ post တစ္ခုပါပဲ႔ဗ်ာ

အားရင္ကၽြန္ေတာ္လည္းနည္းနည္းေလာက္၀င္ေဖာဦးမယ္

အခုေတာ႔ လုပ္စရာေလးရွိေသးလို႔

ေကာင္းတယ္ဆက္ေရးပါဦးေနာ္

[You must be registered and logged in to see this link.]

http://www.myanmaritresource.info

sHa92

sHa92
Founder



Founder
အားလုံး မဂၤလာပါ.
က်ေနာ့္ သင္ခန္းစာကို ဆက္လက္ေရးသားသြားပါမယ္။ ပထမ သင္ခန္းစာကို ရၿပီဆုိရင္ေတာ့ Basic အေနနဲ႔ သိသင့္သေလာက္သိသြားၿပီလုိ႔ ဆုိလို႔ရပါၿပီ.. အခု ဒုတိယပိုင္းအေနနဲ႔ နည္းနည္းေလး အဆင့္ၿမင့္တာေတြ ေၿပာသြားပါမယ္။ ဒီ Bat File ကို TuT အေနနဲ႔ ေရးတာ အားလုံး စံုလင္သြားရင္ E-Book အေနနဲ႔ ၿပဳလုပ္ၿပီးေတာ့ ဖုိရမ္ထဲကိုအၿမဲ မလာနုိင္တဲ့သူေတြ အဆင္ေၿပေအာင္ လုပ္ေပးပါ့မယ္။

အခု က်ေနာ္ ပထမဆုံး စေၿပာခ်င္တာကေတာ့ call နဲ႔ exit တုိ႔ အေၾကာင္းၿဖစ္ပါတယ္။
အရင္တေခါက္ကလိုဘဲ Notepad ထဲသြားၿပီးေတာ့ ေအာက္မွာ ရိွတဲ့ Code ေတြကို ရိုက္ထည့္လိုက္ပါ။

Code:
@echo off
echo WoW I know the basics of batch
call call.bat
pause
exit
ၿပီးရင္ေတာ့ Folder အသစ္တစ္ခုတည္ေဆာက္ၿပီး အဲဒါကို adv1.bat ဆုိတဲ့နာမည္နဲ႔ သိမ္းလိုက္ပါ။
ေနာက္တစ္ခါ Notepad ကို ၿပန္ဖြင့္ပါ။ ၿပီးရင္ ေအာက္မွာ ရိွတဲ့ Code ကို ထပ္ရိုက္ပါ။

Code:
@echo off
echo I Love *Y*
pause

ၿပီးရင္ေတာ့ ခုနက Save ထားတဲ့ adv1.bat နဲ႔ တူတူ Folder ထဲမွာ call.bat ဆုိတဲ့နာမည္နဲ႔ Save လုိက္ပါ။
ေနာက္တစ္ဆင့္အေနနဲ႔ ပထမေရးထားတဲ့ adv1.bat ဆုိတာကို Run လုိက္ပါ။
ေအာက္မွာ ၿပထားတဲ့ အတုိင္း Screen မွာ ေပၚလာပါလိမ့္မယ္။

WoW I know the basics of batch
I Love *Y*
Press any key to continue... (ၾကိဳက္တဲ့ Key တစ္ခ်က္ႏွိပ္လိုက္ပါ)
Press any key to continue... (ဒီစာေၾကာင္းေလး ေနာက္တစ္ခါထပ္ေပၚလာမွာပါ။ ေနာက္ထပ္ ၾကိဳက္တဲ့ Key ကို ႏွိပ္မွ Program က ထြက္သြားပါလိမ့္မယ္)

အဲဒါကို ၾကည့္ခ်င္းအားၿဖင့္ exit က ဘာအလုပ္လုပ္တယ္ဆုိတာ သိမွာပါေနာ္..
ေနာက္တစ္ခုအေနနဲ႔ call ပါ... call ဆုိတာကေတာ့ ေနာက္ထပ္ batch file တစ္ခုကို ေခၚသံုးတာပါ။ Very Happy Very Happy
ဒီေလာက္ဆုိ call နဲ႔ exit အေၾကာင္းသိေလာက္ၿပီထင္ပါတယ္။

http://www.myanmaritresource.info

sHa92

sHa92
Founder



Founder
က်ေနာ္တုိ႔ TuT ကို ၿပန္စလုိက္ရေအာင္....
ဒီတစ္ခါေတာ့ Features နည္းနည္း စံုစံုလင္လင္ကို တင္ၿပေပးပါ့မယ္။ က်ေနာ္ေရးတာက အလြယ္အဆင့္ကေန အခက္အဆင့္ ကို သြားေနတာေတာ့ မဟုတ္ဘူးေနာ္။ က်ေနာ့္ မွာ ကိုးကားစရာစာအုပ္က မရိွေတာ့လို႔ ဟိုေရာက္ဒီေရာက္နဲ႔ က်ေနာ္ သတိရၿပီးေတာ့ သိေသးသမွ်ေတြေရးေပးေနတာပါ။ ဖတ္ရတာ အခက္အခဲေတာ့ နည္းနည္းရိွမယ္လို႔ထင္တယ္။ နားလည္ ေပးမယ္လို႔ထင္ပါတယ္။

ဟုတ္ကဲ့ပါ အခု က်ေနာ္ ေရးေပးမွာကေတာ့ Windows Application တစ္ခုကို ဘယ္လို ေခၚ Run မလဲဆုိတာပါ
ေအာက္မွာေပးထားတဲ့ Code ကို Notepad မွာရိုက္ထည့္ၾကည့္ပါ့မယ္...

Code:
@echo off
echo I am testing to call Notepad.exe
start /MIN notepad
pause

အဲဒါကို save ၿပီးေတာ့ Run မယ္ဆုိရင္ေတာ့ ေအာက္မွာ ၿပထားတဲ့ အတုိင္းေပၚလာပါလိမ့္မယ္။

I am testing to call Notepad.exe
(အဲဒါလာၿပီးရင္ Notepad က minimized အေနအထားနဲ႔ ေပၚလာပါလိမ့္မယ္။ /MIN ေနရာမွာ /MAX လို႔ထားရင္ေတာ့ maximized အေနအထားနဲ႔ ေပၚမွာပါ)
Press any key to continue...

ေနာက္တစ္ဆင့္အေနနဲ႔ batfile ထဲကေန ထြက္ဖုိ႔ အခ်ိန္သတ္မွတ္ေပးၾကည့္ရေအာင္
ေအာက္မွာေပးထားတဲ့ Code ေလးေတြကို Notepad ထဲမွာေရးေပးပါ

Code:
@echo off
echo i am trying timeout
set wait=0

:pause1
set /a wait=%wait%+1
if %wait% leq 1000 goto pause1

echo IT WORKED!!!
pause

ဒီ Code ေတြကို နားမလည္ဘူးဆုိရင္ေတာ့ Copy Paste သာလုပ္ၿပီးေတာ့ Notepad ထဲကို ထည့္လိုက္ပါေတာ့။
က်ေနာ္ အေပၚမွာေရးဖူးတဲ့ နွစ္ခုထဲမွာ set အေၾကာင္း အနည္းငယ္ပါၿပီးေတာ့ if နဲ႔ condition စစ္တာလည္း ပါသလို
:pause1 လုိမ်ိဳး Function ခြဲေရးတာလည္း ဘာဆုိတာ ပါပါတယ္။ အဲဒီ့ေတာ့ ဒါကို နားမလည္ရင္လည္း အဲဒါေလးေတြ ၿပန္ၾကည့္လုိက္ရင္ အၾကမ္းဖ်င္းေတာ့ သေဘာေပါက္မွာပါ။
% ေတြ /a ေတြနဲ႔ က်န္တဲ့ နားမလည္တာေတြကို ခ်န္ထားခဲ့ပါ။ အကယ္လို႔ က်ေနာ္ အခ်ိန္ရရင္ Parameter ေတြ အေၾကာင္းကို က်ယ္က်ယ္ၿပန္႔ၿပန္႔ ထပ္ေဆြးေႏြးေပးပါ့မယ္။ ခုေတာ့ ဒီတုိင္း သေဘာေပါက္ရံုေလာက္ေလး ထားၿပီး အဲဒါေလးကို Save ၿပီးရင္ Run လိုက္ပါ။ ေအာက္မွာ ၿပထားတဲ့ အတိုင္းေပၚလာပါလိမ့္မယ္...

I am trying timeout
(ၿပီးရင္ေတာ့ စကၠန္႔ နည္းနည္းေလာက္ေစာင့္ရပါလိမ့္မယ္) (အဲဒါကေတာ့ :pause1 ထဲမွာ ေရးထားတဲ့ Code ေၾကာင့္ပါ။)(အဲဒါကို ေစာင့္ၿပီးရင္ေတာ့ ေနာက္တစ္ေၾကာင္းလာပါလိမ့္မယ္)
IT WORKED!!!
Press any key to continue...

ဒါဆုိရင္ေတာ့ စကၠန္႔ ၿဖစ္ၿဖစ္ မိနစ္ၿဖစ္ၿဖစ္ သတ္မွတ္ၿပီးေတာ့ batch file run တာကို ရပ္ၿခင္းအား က်ေနာ္တို႔ စမ္းသတ္ၿပီးပါၿပီ။ ဘယ္လို အလုပ္လုပ္တယ္ဆုိတာလည္း နားလည္မယ္လို႔ထင္ပါတယ္။

က်ေနာ္ ေနာက္ထပ္ တစ္ဆင့္အေနနဲ႔ TIME ဆုိတဲ့ Command အေၾကာင္းကို ရွင္းၿပေပးပါ့မယ္
ေအာက္မွာ ေပးထားတဲ့ Code ေတြကို Notepad ထဲမွာ ေရးလုိက္ပါ...

Code:
@echo off
echo Hello.... What time it is!!!
TIME 12:00
echo oHH it is 12:00
pause

အဲဒါကို Save ၿပီး Run မယ္ဆုိရင္ေတာ့ ေအာက္မွာ ၿပထားသလို ၿမင္ရပါလိမ့္မယ္...

Hello.... What time it is!!!
oHH it is 12:00

ဒါဆုိရင္ TIME က ဘာအလုပ္လုပ္လည္း ဆုိတာ သိၿပီလုိ႔ထင္ပါတယ္။ စက္ရဲ႕ အခ်ိန္ကို ေၿပာင္းေပးတာပါ။
ေနာက္တစ္ဆင့္အေနနဲ႔ က်ေနာ္တို႔ DOS ထဲမွာ ၿပမယ့္ စာသားေတြနဲ႔ ေနာက္ခံေတြ ကို အေရာင္ေလးေတြနဲ႔ အလွဆင္ၾကည့္ၾကပါမယ္။
ေအာက္မွာ ေပးထားတဲ့ Code ေတြကို Notepad ထဲကူးၿပီး Save ၿပီး Run လိုက္ပါ။

Code:
@echo off
echo I am trying the colors
pause
color 04
echo testing
pause
color f
echo again
pause
color 4f
echo DONE
pause

Run လုိက္ရင္ ဘယ္လိုေဖာ္ၿပတယ္ဆုိတာေတာ့ ကိုယ့္ဟာကိုယ္ လုပ္ၾကည့္လိုက္ပါ။ က်ေနာ္ Code ေတြကို ဘဲရွင္းၿပေပးပါေတာ့မယ္။
color ဆုိတာကေတာ့ အေရာင္သတ္မွတ္တယ္ဆုိတာ လူတိုင္း သိပါလိမ့္မယ္။ သူ႔ေနာက္မွာ ထည့္တဲ့ Code ေတြကို ရွင္းၿပပါ့မယ္။

04= background black နဲ႔ font ကို red ထားတာပါ
f = font ကို white ထားတာပါ
4f = background red နဲ႔ f ကို white ထားတာပါ

ပိုၿပီး အေသးစိတ္သိခ်င္ရင္ေတာ့ Run>>cmd>>color /? ဆုိၿပီးရိုက္လိုက္ပါ။

0=balck
1=blue
2=green
3=aqua
4=red
5=purple
6=yellow
7=white
8=gray
9=light blue
a=light green
b=light aqua
c=light red
d=light purple
e=light yellow
f=bright white
အဲဒီ့လုိေဖာ္ၿပပါလိမ့္မယ္။ အဲဒါေတြကို ခုနက က်ေနာ္တို႔ သံုးသလိုမ်ိဳး color 9f စသည္ၿဖင့္ တြဲသံုးနုိင္ပါတယ္။
ေရွ႕မွာထားတဲ့ ဟာက Back Color ၿဖစ္ၿပီးေတာ့ ေနာက္ကဟာက Font Color ၿဖစ္ပါတယ္။
ဒီေလာက္ဆုိရင္ေတာ့ Color ေတြ အေၾကာင္းသိနုိင္ပါၿပီ။ ဥာဏ္ရိွသလို ခ်ဲ႕ထြင္အသံုးခ် သြားနုိင္ပါတယ္။

အခုေနာက္တစ္ဆင့္အေနနဲ႔ Title ေၿပာင္းတာကို ေၿပာၿပေပးပါ့မယ္
ေအာက္က Code ေတြကို Notepad ထဲမွာေရးၿပီး Save လုိက္ပါ။

Code:
@echo off
title Myanmar IT Resource
echo Trying to change the title
pause
အဲဒါကို Run လုိက္ရင္ေတာ့ Title Bar မွာ Myanmar IT Resource ဆုိၿပီးေဖာ္ၿပပါလိမ့္မယ္
ေနာက္တစ္ဆင့္ အေနနဲ႔ Shutdown နဲ႔ Restart ကို စမ္းၾကည့္ၾကပါမယ္။

Code:
@echo off
start C:\Windows\RUNDLL.EXE user.exe,exitwindowsexec
exit

အဲဒီ့ အေပၚကေကာင္ေလးကို save ၿပီး Run မယ္ဆုိရင္ေတာ့ Restart က်သြားပါလိမ့္မယ္။

Code:
@echo off
start C:\Windows\RUNDLL32.EXE user,exitwindows
exit

အေပၚကဟာေလးကုိ Run ရင္ေတာ့ Shutdown ပါ.
ေနာက္ထပ္ နည္းေတြလည္း ရိွပါေသးတယ္။ တၿခားနည္းေတြက လူတုိင္းသိၿပီးသားေတြမို႔လုိ႔ ဒီနည္းေလးကို ေဖာ္ၿပေပးလိုက္တာပါ။ code ေတြကေတာ့ ရွင္းရွင္းလင္းလင္းေတြ မို႔လုိ႔ လူတုိင္းနားလည္မယ္ထင္လို႔ ထပ္ မရွင္းၿပေတာ့ဘူးေနာ္။ နားမလည္ေလာက္စရာလည္း မပါဘူးလို႔ထင္ပါတယ္။

ဒီေန႔ေတာ့ က်ေနာ့္ TuT ကို ဒီေလာက္နဲ႔ ရပ္နားပါရေစ။ ေနာက္ေန႔ေတြမွာ For နဲ႔ Looping ပတ္တာကို အေသးစိတ္ရွင္းၿပသြားပါမယ္။ လုိအပ္တာရိွရင္လည္း ၿဖည့္စြက္ေၿပာေပးၾကပါ။ သိခ်င္တာရိွရင္ ၊ က်ေနာ့္ကို ေရးေစခ်င္တာရိွရင္လည္း ေမးခဲ့ ၊ ေၿပာခဲ့ၾကပါ။ က်ေနာ္ တတ္နုိင္သေလာက္ လုပ္ေပးသြားပါ့မယ္။ က်ေနာ္ သိရင္သိတယ္ မသိရင္မသိဘူး ရွင္းရွင္းလင္းလင္းေၿပာေပးပါ့မယ္။

စာဖတ္သူ အားလုံးကို ေက်းဇူးတင္စြာၿဖင့္
$ƴǩǾ

http://www.myanmaritresource.info

sHa92

sHa92
Founder



Founder
သင္ခန္းစာေလး ဆက္လက္ေဆြးေႏြးၾကရေအာင္

က်ေနာ္ ဒီတစ္ေခါက္ ေၿပာၿပေပးမွာကေတာ့ For Loop အေၾကာင္းၿဖစ္ပါတယ္။
အဆင့္ နည္းနည္း ၿမင့္လာၿပီၿဖစ္လို႔ ေသခ်ာေလး လိုက္လုပ္ၾကည့္ေစခ်င္တယ္။ ၁ေခါက္နဲ႔ နားမလည္ရင္ အနည္းဆုံး ၂ ေခါက္ေလာက္ဖတ္ေပးပါ။ က်ေနာ္ေရးထားတာ နားမလည္ရင္ေတာ့ က်ေနာ့္ကို ၿပန္ေမးပါ။ ေၿဖေပးပါ့မယ္။

ဒါဆုိ က်ေနာ္တုိ႔ For Loop အေၾကာင္းေလး စလုိက္ရေအာင္
သူ႔ကို ေရးမယ္ဆုိရင္ ေရးပံုေရးနည္းကေတာ့

FOR %%PARAMETER IN(set) DO command

For Loop ရဲ႕ Syntax ကိုေတြ႔လို႔ စိတ္မညစ္သြားပါနဲ႔။ က်ေနာ္ အတတ္နုိင္ဆုံး နားလည္လြယ္ေအာင္ေရးေပးပါ့မယ္။
က်ေနာ့္ တုန္းက ဆုိရင္ ဒီ Looping အပိုင္းလည္း ေရာက္ေရာ သင္ေပးမယ့္သူလည္း မရိွ ၊ Google မွာရွာေတာ့ လည္း အၿပည့္အစံုမရနဲ႔ ေတာ္ေတာ္ ဒုကၡေရာက္ခဲ့ရတာ။ အခုေတာ့ က်ေနာ္လည္း နားလည္သင့္သေလာက္ နားလည္ ခဲ့ၿပီးၿပီမို႔ မွတ္မိသေလာက္ ၿပန္လည္မွ်ေ၀တာပါ။
အစ္ကို တုိ႔ ဒီအပိုင္းမွာ ဖတ္ရတာ နားမလည္ေတာ့ လုိ႔ စိတ္ညစ္ၿပီးေတာ့ Bat ကို မေလ့လာေတာ့တာ မ်ိဳးေတာ့ မလုပ္ပါနဲ႔ လို႔ ေတာင္းဆုိခ်င္ပါတယ္။ က်ေနာ့္တုန္းကလည္း အဲလို စိတ္မ်ိဳးၿဖစ္ဖူးလို႔ပါ။ နားမလည္ရင္ က်ေနာ့္ကို ေမးပါ။ က်ေနာ္မသိရင္လည္း က်ေနာ့္ထက္ေတာ္တဲ့ တတ္တဲ့သူေတြကို ၿပန္ေမးေပးပါ့မယ္။
အတတ္နုိင္ဆုံး နားလည္ေအာင္ေရးေပးမွာ ၿဖစ္လို႔ ေသခ်ာလိုက္လုပ္ေပးပါ။
ကဲဒါဆုိရင္ က်ေနာ့္ ေရးနည္း ထုံးစံအတုိင္း ေအာက္က ဥပမာေလးနဲ႔ စလုိက္ရေအာင္

Code:
@echo off
cls
for %%A in (abc,def,xyz) do echo %%A

အဲဒါေလးရဲ႕ Code ေတြကို ရွင္းၿပပါ့မယ္။ cls ကေတာ့ သိၿပီးသားၿဖစ္မွာပါ။

For Loop ထဲမွာ Variable တစ္ခုၿဖစ္တဲ့ %%A ကို ေၾကၿငာပါတယ္။ ၿပီးေတာ့ သူ႔ထဲကို မတူညီတဲ့ Value ေတြကို (abc,def,xyz) ဆုိၿပီေတာ့ ကြင္းထဲမွာၾကိဳထည့္ထားပါတယ္။ အဲဒီ့ ကြင္းထဲကေကာင္ေတြကို ေတာ့ predefined set value လုိ႔ေခၚပါတယ္။ အဲဒါက Looping တစ္ခါပတ္တုိင္း တစ္ခါသတ္မွတ္ထားမွာပါ။

ေနာက္ဆုံးက echo %%A ဆုိတာနဲ႔ For Loop က Variable ရဲ႕ တန္ဖိုးကို အသစ္ေၿပာင္းထည့္ပါတယ္။

%%A ဆုိတာကေတာ့ Variable တစ္ခုၿဖစ္ၿပီး သူက Looping တစ္ခါပတ္တုိင္း မတူညီတဲ့ Values ေတြ ကို predefined set ထဲက တန္ဖုိးေတြနဲ႔ လက္ခံပါတယ္။
0 ကေန 9 ကလြဲရင္ %% ေနာက္မွာ ၾကိဳက္တဲ့ character တစ္လုံးစီကို သံုးႏိုင္ပါတယ္။

IN(abc,def,xyz) ဆုိတာကေတာ့ For Loop လုပ္ေဆာင္မယ့္ list တစ္မ်ိဳးၿဖစ္ပါတယ္။
က်ေနာ္တို႔ Program က Looping တစ္ခါပတ္တုိင္းမွာ Variable ၿဖစ္တဲ့ %%A ထဲကို () ကေန အမ်ိဳးမ်ိဳးေသာ တန္ဖိုးေတြထည့္သြင္းနုိင္ပါတယ္။
() ထဲက တန္ဖိုးေတြကို ေတာ့ comma,colon ေတြနဲ႔ space bar စတာေတြနဲ႔ ပိုင္းၿခားနုိင္ပါတယ္ဗ်ာ။
() ထဲက တန္ဖုိးမကုန္မခ်င္း For Loop ကအလုပ္လုပ္ေနေစပါတယ္။
DO ကေတာ့ Looping တစ္ခါပတ္ တုိင္း ဘာအလုပ္လုပ္ခ်င္တယ္ဆုိတာေၿပာတာပါ။
ခုနက က်ေနာ္တုိ႔ ေရးခဲ့တဲ့ Program မွာဆုိရင္ေတာ့ ECHO %%A နဲ႔ အေၿဖကို ရိုက္ထုတ္ထားပါတယ္။
ထုိသို႔ ရိုက္ထုတ္ထားခ်င္းအားၿဖင့္ Loop တစ္ခါပတ္တုိင္း abc ဆုိတဲ့ Variable A ထဲက တန္ဖိုးကို Looping အတြက္ Do သံုးၿပီး Echo နဲ႔ အေၿဖကို User ကို ၿပသေပးပါတယ္။
က်ေနာ္ စာနဲ႔ ေၿပာတာ နားမလည္ရင္ ခုနက Program ကို Run ၿပီးေတာ့ ၾကည့္လုိက္ပါ။ ေအာက္ကေပးထားတဲ့ အေၿဖအတုိင္းရပါလိမ့္မယ္။

abc
def
xyz

အဲလို တစ္ခုခ်င္းစီ Looping အတုိင္းထြက္လာမွာပါ။ Loop ၃ ခါပတ္ခဲ့ပါတယ္။ အေၿဖကို do နဲ႔ echo သံုးၿပီးေတာ့ ၃ခါရိုက္ထုတ္ပါတယ္။ abc က A ထဲမွာ ပထမအၾကိမ္ Loop အတြက္ရိွမွာ ၿဖစ္ၿပီးေတာ့ ၊ def က ဒုတိယ loop ၊ xyz ကေတာ့ တတိယ loop မွာ ၿဖစ္ပါတယ္။
ဒါဆုိရင္ေတာ့ ခုနက ေရးခဲ့တဲ့ Bat File ေလးကို နားလည္ၿပီးေတာ့ Forr Loop ကို လည္း အေၿခခံအေနနဲ႔ နည္းနည္းေလး နားလည္သြားမယ္ထင္ပါတယ္။

For Loop က Parameter ေတြနဲ႔ တြဲၿပီးသံုးတတ္ရင္သံုးတတ္သလို Powerful ၿဖစ္ပါတယ္။
for Loop ကို ေလ့လာဖို႔ ေနာက္ထပ္ဥပမာတစ္ခုေလာက္လုပ္ၾကည့္ရေအာင္။ နည္းနည္း ခက္ေတာ့ခက္မယ္ဗ်. ဘာလို႔လည္း ဆိုေတာ့ က်ေနာ္ အေပၚမွာ ေရးၿပဖို႔ က်န္ခဲ့တာေလးေတြရိွေနလို႔ပါ။ က်ေနာ္ Parameter ကို define လုပ္တာနဲ႔ Parameter ေတြက ဘယ္လုိ အလုပ္လုပ္တယ္ဆုိတာ မေၿပာခဲ့ရလုိ႔ပါ။ ေအာက္က ဟာေလးကို Notepad မွာ ေရးၾကည့္လိုက္ပါ။

Code:
@echo off
echo
echo I am going to delete the following files:
echo %1 %2
echo.
echo Press Ctrl+C to Abort process
pause
for %%a IN(%1 %2) do del %%a
echo Killed Files. Mission Accomplished.

ေရးၿပီးၿပီဆုိရင္ေတာ့ သူ႔ကို testfor.bat နဲ႔ Save လုိက္ပါ။ ၿပီးရင္ ဒီတုိင္းထားပါ။ Program ကို မ Run လုိက္ပါနဲ႔။

Start>>Run>>cmd>> ထဲေရာက္သြားရင္ ခုနက က်ေနာ္တုိ႔ ေရးခဲ့တဲ့ testfor.bat ရဲ႕ လမ္းေၾကာင္းကို ေၿပာင္းလိုက္ပါ။ Path ေၿပာင္းတာေတာ့ က်ေနာ္လည္း အေသးစိတ္မေၿပာၿပေတာ့ဘူးေနာ္။ cd Command နဲ႔ ေၿပာင္းတယ္ဆိုတာ အားလုံး သိၿပီသားၿဖစ္မွာပါ။
အဲဒီ့ လမ္းေၾကာင္းကို ေၿပာင္းၿပီးရင္ေတာ့ ခုနက save ခဲ့တဲ့ testfor.bat ကို ေခၚလိုက္ပါ ၿပီးရင္ ဖ်က္ခ်င္တဲ့ file name ကို အဲဒီ့ေနာက္မွာထပ္ေရးပါ။
စာနဲ႔ေရးတာ နားမလည္မွာဆုိးလို႔ က်ေနာ္ ဥပမာ ေရးၿပလိုက္ပါမယ္။

Code:
cmd ထဲေရာက္ေနၿပီး လမ္းေၾကာင္းလည္းေၿပာင္းၿပီးသားဆုိပါက
မိမိ path လမ္းေၾကာင္း>testfor.bat a.txt b.txt

အဲဒီ့မွာ a.txt နဲ႔ b.txt ဆုိတာက က်ေနာ္ဖ်က္ခ်င္တဲ့ ဖုိင္နာမည္ပါ။ အဲဒီ့ေနရာမွာ ၾကိဳက္တာထားလို႔ရပါတယ္။ *.txt , *.pdf အစရိွသၿဖင့္ေပါ့။ အဲလိုရုိက္ၿပီး enter ေခါက္လုိက္ရင္ေတာ့ အဲဒီ့ file Name ေတြပ်က္သြားမွာ ၿဖစ္ပါတယ္။ အေပၚကဥပမာေလးကေတာ့ For ကို Parameter ေတြနဲ႔ တြဲသံုးၿပီးေတာ့ ဘယ္ေလာက္ အသံုးတဲ့တယ္ဆိုတာကို သက္ေသၿပလုိက္တာပါ။
စာဖတ္သူတို႔ အဆင္ေၿပရင္ေၿပသလို ဥာဏ္ရိွရင္ ရိွသလို ခ်ဲ႕ထြင္ေရးနုိင္ၾကပါတယ္။ကဲဒါဆုိ က်ေနာ္ ခုနက ဥပမာ ရဲ႕ အလုပ္လုပ္ပံု လုပ္နည္းကို ရွင္းၿပၿပီးၿပီ ၿဖစ္လို႔ Code ေတြကို နည္းနည္း ၿပန္ရွင္းၿပပါမယ္။ မွတ္မိသြားေအာင္ေပါ့။

4 လိုင္းေၿမာက္က echo %1 %2 ဆုိတာကေတာ့ For ထဲမွာ ေၾကၿငာထားတဲ့ a ဆိုတဲ့ Variable ထဲမွာ၇ိွမယ့္ %1 နဲ႔ %2 ထဲက Variable ကို ရိုက္ထုတ္တာပါ။
ထုိသုိ႔ ၿပဳလုပ္ၿခင္းအားၿဖင့္ က်ေနာ္တုိ႔ဟာ ခုန Run ၾကည့္တုန္းလိုမ်ိဳး I am going to delete the following files: ဆိုတဲ့ စာသားေအာက္မွာ က်ေနာ္တုိ႔ ရိုက္ထည့္လိုက္တဲ့ a.txt နဲ႔ b.txt ကို ေဖာ္ၿပေပးတာပါ။ OK?

၅ လုိင္းေၿမာက္မွာေတာ့ ပံုမွန္ echo ေနာက္မွာ . ေလးကို ထည့္ထားတာပါ။ ထုိသို႔ထည့္ထားၿခင္းအားၿဖင့္ တစ္လိုင္းၿခားတဲ့ ကိစၥကို လုပ္ေဆာင္ေပးပါတယ္။ (အရင္က မေၿပာခဲ့ရလုိ႔ အခုမွ ၿဖည့္ေၿပာေပးတာပါ)

ဒါဆုိ for looping ကို ေရးထားတဲ့ ေနရာကို ရွင္းၿပေပးပါ့မယ္။
ဖတ္ရ ခက္မွာ စိုးလုိ႔ အေပၚကဥပမာထဲက For Loop အတြက္ Code ကို ၿပန္ေရးေပးလိုက္ပါတယ္။

Code:
for %%a IN(%1 %2) do del %%a

ဒါဆုိရင္ Program ေလးလဲ Run ၿပီးသားဆုိေတာ့ For Loop ထဲက လုပ္ငန္းေတြကုိနည္းနည္းေတာ့ သေဘာေပါက္ေနၿပီထင္ပါတယ္။
ပိုၿပီးေတာ့ နားလည္သြားေအာင္ က်ေနာ္ နည္းနည္း လွ်ာရွည္လိုက္ပါ့မယ္။

%%a ဆုိၿပီးေတာ့ a ဆုိတဲ့ Variable ေလးတစ္ခုေၾကၿငာပါတယ္။
အဲဒီ့ a ထဲကို IN(%1 %2) ဆုိၿပီးေတာ့ a ထဲကို 1 နဲ႔ 2 ကို ထည့္ထား သတ္မွတ္ထားပါတယ္။
ၿပီးေတာ့ do ဆုိၿပီး ခုနက a ထဲမွာ ေရာက္ေနမယ့္ တန္ဖုိး ၂ ခုကို del ဆုိတဲ့ command နဲ႔ ဖ်က္လုိက္ပါတယ္။
ဒီေလာက္ဆုိ နားလည္မယ္ထင္ပါတယ္။ For နဲ႔ ပါတ္သက္လို႔ က်ေနာ္ ရွင္းၿပနုိင္တာ ဒီေလာက္ပါဘဲ။ ပိုမိုေကာင္းမြန္တဲ့ Looping ေတြနဲ႔ ၿပီးၿပည့္စံုေသာ bat တစ္ခုကို ဖန္တီးၿပီး PC ကို အၿပည့္အ၀ အႏာၱရာယ္ အၾကီးအက်ယ္ေပးလို႔ရတဲ့ အတြက္ အမ်ားၾကီးမရွင္းၿပေတာ့ပါဘူး။

ေနာက္ေန႔ေတြမွာ IF နဲ႔ ပါတ္သက္လုိ႔ အေသးစိတ္ေဆြးေႏြးေပးပါ့မယ္။ အဲဒါၿပီးရင္ေတာ့ Bat အေၾကာင္းလည္း အေၿခခံအေနနဲ႔ ေတာ္ေတာ္ စံုသြားေလာက္ၿပီၿဖစ္လို႔ က်ေနာ့္ TuT ကို IF Statement အေၾကာင္းနဲ႔ ပိတ္မယ္ဆုိတာ ၾကိဳတင္ ေၿပာၾကားပါရေစ။ ဒီ့ထက္ bat အေၾကာင္းအေသးစိတ္သိခ်င္ရင္ေတာ့ bat နဲ႔ ပါတ္သက္တဲ့ site တစ္ခ်ိဳ႕ရိွပါတယ္။ ဒီေန႔ေတာ့ မပါလာလို႔ က်ေနာ္ၿပန္ရွာၿပီး ေနာက္ေန႔မွာ တင္ေပးပါ့မယ္။
စာဖတ္သူတုိ႔ အေနနဲ႔ bat ကို အသံုးၿပဳၿပီး System တစ္ခုကို ေကာင္းေကာင္း ထိန္းခ်ဳပ္လို႔ရပါတယ္ဆုိတာကို အနည္းငယ္သိသြားၿပီၿဖစ္လို႔ အကယ္လို႔မ်ား ဒီ့ထက္ က်ယ္က်ယ္ၿပန္႔ၿပန္႔သိခ်င္ရင္ေတာ့ စာမ်ားမ်ားဖတ္ပါ.. Windows Command ေတြကို ရွာေဖြပါ။ DoS ေခတ္ကို ခဏ ၿပန္သြားပါ လို႔တိုက္တြန္းပါရေစ။ (က်ေနာ္ကေတာ့ ဒါနဲ႔ ပါတ္သက္လုိ႔ စိတ္မ၀င္စားေတာ့လို႔ ဆက္မေလ့လာေတာ့ဘူးဗ်ိဳ႕။ Razz အခုေတာင္ ေရးလက္စမို႔လို႔ ၊ ၿပန္စဥ္းစားရတာ ေတာ္ေတာ္ ဦးေႏွာက္ေၿခာက္တယ္။ Very Happy Very Happy)

ေစာင့္ဆုိင္းဖတ္ရႈေပးေသာ သူမ်ားအားလုံးကို ေက်းဇူးအထူးတင္ရိွပါသည္။
$ƴǩǾ

http://www.myanmaritresource.info

ET

ET
Moderator



Moderator
ဒီပုိစ္ေလးဟာ ေလ့လာသူေတြအတြက္ အက်ိဳးရွီပါတယ္
အခုလို မအားတဲ့ၾကားက ရွင္းျပတဲ့အတြက္ ညီကို ေက်းဇူးတင္ရွိပါေၾကာင္း

http://alinkarnya.blogspot.com/

sHa92

sHa92
Founder



Founder
က်ေနာ္ တုိ႔ရဲ႕ TuT ကို ဆက္လက္ေဆြးေႏြးၾကရေအာင္....
ဒီေန႔မွာေတာ့ Condition စစ္ၿခင္းကိစၥရပ္ေတြနဲ႔ ပါတ္သက္ၿပီးေဆြးေႏြးေပးသြားမွာၿဖစ္ပါတယ္။

IF အေၾကာင္းကေနစတင္ေဆြးေႏြးပါ့မယ္။ အရင္ရက္ေတြက IF ကို Coding ထဲမွာ ထည့္သံုးခဲ့ဖူးေပမယ့္ က်ေနာ္ အေသးစိတ္ရွင္းၿပၿခင္းမရိွခဲ့ပါဘူး။ အဲဒီ့အတြက္ If နဲ႔ ပါတ္သက္ၿပီးက်ယ္က်ယ္ၿပန္႔ၿပန္႔သိနုိင္ေအာင္ အခု ရွင္းၿပေပးပါ့မယ္။ အရင္ရက္ေတြက က်ေနာ္ေရးခဲ့တဲ့ ဟာေတြက Ref မရိွေပမယ့္ ဒီတစ္ခါေရးတဲ့ဟာကေတာ့ က်ေနာ္ကိုယ္တုိင္လည္း ၿပန္လည္စိတ္ပါလာၿပီး IF နဲ႔ ပါတ္သက္လို႔ အေသးစိတ္ေရးေပးခ်င္တဲ့ စိတ္လည္း ရိွတာေၾကာင့္ Google ကေနရွာေဖြၿပီး Ref လုပ္ေပးလိုက္ပါတယ္။

က်ေနာ္တုိ႔ရဲ႕ Batch File Programs ေတြကို Intel ရိွေစဖုိ႔နဲ႔ ပိုမို အသံုးတည့္ေစလိုတဲ့ အခါေတြမွာ If statement ေတြကိုအသံုးခ်နုိင္ပါတယ္။
သူ႔ကို အသံုးခ်ၿခင္းအားၿဖင့္ က်ေနာ္တုိ႔ သတ္မွတ္ထားတဲ့ parameter ေတြ Variable ေတြကို စစ္ၿပီးေတာ့ သက္ဆုိင္ရာ Task တစ္ခုစီကို အလုပ္လုပ္ေစတာမ်ိဳးေတြ ကိုလုပ္နုိင္ပါတယ္။ ဒါတင္မကေသးပါဘူး သူက က်ေနာ္တို႔လိုခ်င္တဲ့ File ကို လိုခ်င္တဲ့ေနရာမွာ ရိွမရိွကိုပါ စစ္ေပးနုိင္ပါေသးတယ္။ ၿခံဳငံုေၿပာရမယ္ဆုိရင္ေတာ့ If ကို Variable ေတြကို စစ္တဲ့ အခါမွာ သံုးတယ္လို႔ အၾကမ္းဖ်င္းမွတ္နုိင္ပါတယ္။

IF ၿဖင့္ File ရိွမရွိကုိစစ္ေဆးၿခင္း

File တစ္ခုကို က်ေနာ္တုိ႔ လုိခ်င္တဲ့ ေနရာမွာ ရိွမရိွကို စစ္ခ်င္တယ္ဆုိရင္ အသံုးၿပဳေလ့ရိွတယ္ If ရဲ႕ ေရးပံုေရးနည္းကေတာ့...

IF EXIST FILENAME Command

က်ေနာ့္ ေရးသားပံုအတုိင္း If ရဲ႕ ေရးပံုေရးနည္းကို နားလည္လြယ္ေစဖို႔ ဥပမာနဲ႔ ရွင္းၿပေပးပါ့မယ္။ ေအာက္မွာ ေပးထားတဲ့ Code ကို Notepad ထဲမွာ ကူးထည့္လိုက္ပါ....

Code:
IF EXIST c:\autoexec.bat ECHO The File Exists at that place

အေပၚက Code ရဲ႕ အလုပ္လုပ္မယ့္ပံုစံကို ေလ့လာၾကည့္ရေအာင္...
သူက c:\autoexec.bat ဆုိတဲ့ file ရိွမရိွကို စစ္ပါမယ္ ၊ အကယ္လို႔ရိွခဲ့မယ္ဆုိရင္ေတာ့ echo နဲ႔ 'The File Exists at that place' ဆုိၿပီးေတာ့ ေဖာ္ၿပေပးမွာၿဖစ္ၿပီးေတာ့ ၊ မရွိခဲ့ဘူးဆုိရင္ေတာ့ ဘာအလုပ္မွဆက္လုပ္မွာ မဟုတ္ပါဘူး။

Code ကို မရွင္းၿပေတာ့ ဘဲ Program အလုပ္လုပ္မယ့္ ပံုစံကို ရွင္းၿပလိုက္တာ နားလည္လြယ္မယ္ထင္လို႔ က်ေနာ္ ပံုစံေၿပာင္းၿပီးရွင္းၿပရတာပါ။ မေန႔က For Loop ကို က်ေနာ္ code ေတြကိုပါ ရွင္းၿပတာ ၊ က်ေနာ့္သူငယ္ခ်င္းေတြက နားမလည္ဘူးဆုိလို႔ ဒီေန႔လည္း အဲလိုထပ္မၿဖစ္ရေလေအာင္ Program Flow ကို ဘဲရွင္းၿပသြားတာပါ။ For Loop ကို ေတာ့ အခြင့္အခါသင့္လွ်င္ထပ္ရွင္းၿပေပးပါ့မယ္။

အခုက်ေနာ္တုိ႔ အေပၚက ဥပမာကို ၿပန္ၾကည့္လုိက္ပါ။ အကယ္လို႔ File သာ မရွိေတာ့ရင္ သူ အလုပ္မလုပ္ေတာ့ပါဘူး။ အဲဒီ့လုိ မၿဖစ္ေစဖို႔အတြက္ က်ေနာ္တုိ႔ဟာ else ပံုစံမ်ိဳး အေရးအသားတစ္ခုထည့္ေရးလို႔ရပါတယ္။ စဥ္းစားပံုကေတာ့ အကယ္လုိ႔မ်ား က်ေနာ္တုိ႔ လိုခ်င္တဲ့ file ရိွမယ္ဆုိရင္ အလုပ္တစ္ခု လုပ္ခိုင္းၿပီးေတာ့ ၊ မရိွခဲ့ဘူးဆုိရင္ ေနာက္အလုပ္တစ္ခုလုပ္ပါ ဆိုတာကို အရင္ရက္က က်ေနာ္ေရးေပးဖူးတဲ့ goto command ကို အသံုးၿပဳသြားမွာပါ။

ဘယ္လိုေရးၾကမယ္ဆုိတာ နားလည္လြယ္ေစဖို႔ ေအာက္မွာ ရိွတဲ့ ဥပမာေလးကို ေလ့လာၾကည့္ရေအာင္....

Code:
@echo off
IF EXIST C:\syko.txt goto $ƴǩǾ
goto end

:SYKO
echo $ƴǩǾ exists
pause

:end
echo $ƴǩǾ doesn't exist
pause

အေပၚက ဥပမာကို Run လိုက္မယ္ဆုိရင္ အလုပ္လုပ္မယ့္ ပံုစံကေတာ့....
အကယ္လို႔ C:\syko.txt သာရိွမယ္ဆုိရင္ က်ေနာ္တုိ႔ဟာ goto ကို သံုးၿပီးေတာ့ $ƴǩǾ ဆုိတဲ့ အပိုင္းတစ္ခုဆီလႊဲထားခဲ့ပါတယ္။ ဒါဆုိရင္ File သာရွိရင္ အဲဒီ့ $ƴǩǾ ဆိုတာကို လုပ္မွာပါ။
အဲ.. အကယ္လို႔မ်ား file သာမရိွခဲ့ဘူးဆုိရင္ စစခ်င္းေရးခဲ့တဲ့ Program မွာ လုိရပ္သြားမွာဆုိးတဲ့ အတြက္ goto end ဆုိၿပီးေတာ့ ေနာက္တစ္လိုင္းစစ္ခဲ့ပါတယ္။ ထိုသို႔ စစ္ၿခင္းအားၿဖင့္ File မရိွေတာ့ရင္ Program ရပ္သြားခ်င္းမွ ေရွာင္ဖယ္နုိင္မွာၿဖစ္ၿပီးေတာ့ Program က ေနာက္တစ္လိုင္းကို အလုိလိုဆင္းဖတ္ၿပီးေတာ့ end ဆုိတဲ့ အပုိင္းကို ေရာက္သြားမွာပါ။ ဒါဆိုရင္ User အတြက္လည္း doesn't exist ဆုိတဲ့ message ကို ၿပန္လည္ၿမင္ေစမွာၿဖစ္ပါတယ္။
ဒီေလာက္ဆုိရင္ IF နဲ႔ ဖိုင္ရိွတာကို စစ္ပံုစစ္နည္းနားလည္ၿပီလုိ႔ ထင္ပါတယ္။

ဆက္လက္ၿပီးေတာ့ File မရိွတာကို စစ္ၾကည့္ၾကရေအာင္
ေရးသားပံုကေတာ့ ခုနကနဲ႔ တူတူပါဘဲ။

IF NOT EXIST FILENAME Command

ဥပမာေလးေရးၾကည့္ရေအာင္

Code:
IF NOT EXIST c:\syko.txt ECHO It doesn't Exist

Code အလုပ္လုပ္ပံုကို အေပၚမွာရိွတဲ့ exist နဲ႔ တူတဲ့အတြက္ထပ္မရွင္းၿပေတာ့ပါဘူး။
ဒီေလာက္ဆုိရင္ NOT ထည့္သံုးတာလည္း သိေလာက္ၿပီလုိ႔ထင္ပါတယ္။

****************************************************************************
သတိၿပဳရန္၊၊ ၊၊ က်ေနာ္တုိ႔ဟာ တစ္ခ်ိန္တည္းမွာပင္ IF ကို အခါခါသံုးၿပီးေတာ့ File ရိွမရိွစစ္လုိ႔ရတယ္ဆုိတာကို သိေစလုိပါတယ္။ အသံုးၿပဳလို႔ရေအာင္ တစ္ေၾကာင္းေရးၿပပါ့မယ္။
>>> IF EXIST c:\autoexec.bat IF EXIST c:\autoexec.bak ECHO Both Exist <<<
****************************************************************************


အေပၚမွာက်ေနာ္ ေရးၿပခဲ့တာေတြက File ရိွမရိွကိုဘဲ စစ္လုိ႔ အဆင္ေၿပတာပါ။ အကယ္လို႔မ်ား က်ေနာ္တုိ႔ဟာ directories တစ္ခုရွိမရိွကို စစ္ခ်င္ၿပီဆုိရင္ေတာ့ အခက္ေတြ႔ပါၿပီ။ အဲဒီ့လို အေၿခအေနမ်ိဳးမွာေတာ့ NULL ဆုိတာေလးက အသံုးတည့္ၿပီေပါ့ဗ်ာ။ NULL ဆုိတာကေတာ့ ဘာမွမရိွတာပါ။ Razz Razz Razz
DOS ကနားလည္တာကေတာ့ Directory တစ္ခုမွာ NULL ဆုိတဲ့ Folder တစ္ခုရိွပါတယ္တဲ့။ (က်ေနာ္လည္းမသိဘူး Google ေၿပာတာ။ Razz Razz Razz)
ဒါဆုိ က်ေနာ္တုိ႔ c:\windows ဆိုတာမ်ားရွိေလမလားလို႔ စစ္ေဆးၾကည့္ရေအာင္လားဗ်ာ။ အဲဒီ့လုိ စစ္ေဆးဖို႔ကေတာ့ လြယ္လြယ္ေလးပါ အေပၚမွာ က်ေနာ္တုိ႔ ေရးခဲ့သလို IF EXIST ကို ၿဖည့္ေရးသြားရံုပါ။ ေအာက္က Code ကို ၾကည့္လုိက္ပါ။

Code:
IF EXIST c:\windows\nul ECHO c:\windows exists

အဲဒီ့လိုနည္းမ်ိဳးနဲ႔ဘဲ Drive တစ္ခုဟာ ခြင့္ၿပဳထားတဲ့ Drive ဟုတ္မဟုတ္စစ္နုိင္ပါေသးတယ္။ ေအာက္က Code ကို ၾကည့္ၾကည့္ပါ။

Code:
IF EXIST c:\io.sys ECHO Drive c: is valid

ဒီေလာက္ဆုိရင္ File ရိွမရိွကို IF နဲ႔ စစ္ၿခင္းနဲ႔ ပတ္သက္လုိ႔ အားလုံး စံုသြားၿပီၿဖစ္လို႔ ေနာက္တစ္ခန္းမွာ User ရိုက္လုိက္တဲ့ Parameter ေတြကို စစ္ၿပီးေတာ့ အလုပ္လုပ္သြားပံုကို ရွင္းၿပပါ့မယ္။
ခုေတာ့ နားလုိက္ပါဦးမယ္။

ဖတ္ရႈေပးတဲ့အတြက္ ေက်းဇူးတင္ပါတယ္။
ေ၀ဖန္ အၾကံေပး ေထာက္ၿပမႈမ်ားကို လက္ခံလ်က္
$ƴǩǾ

http://www.myanmaritresource.info

C0D3R

C0D3R
MITR Master



MITR Master
သိသေလာက္ေလးပါ

@echo off

@echo off ။Script တိုင္းရဲ႕အစမွာေရးရတဲ႕စကားလံုးျဖစ္ပါတယ္။Script ဟာ Dos Mode မွာ Rum မွာျဖစ္ျပီးလက္ရွိအသံုးျပဳေနသူရဲ႕ Desktop မွာအစအလုပ္ လုပ္မွာျဖစ္ပါတယ္။
ဒီစကားလံုးသာမပါရင္ C:\Documemt and Settings\User name\Desktop ဆိုျပီးစ
မွာျဖစ္ေတာဒီစကားလံုးေတြရဲ႕အက်ဳိးဆက္(echo)ေတြရွိျပီးပရုိဂရမ္ Run လို႕ရေသာ္
လည္း Display Windows မွာရွူပ္ေထြးမွုေတြျဖစ္ေနပါလိမ္႕မယ္။ဒါေၾကာင္႕ဒီေနရာကေနစျပီး
ေရွ႕ကက်ဳိးဆက္ေတြရပ္ပစ္မယ္လို႕ေျပာတဲ႕အေနနဲ႕ဒီစကားလံုးကိုမျဖစ္မေနထည္႕သံုးထား
တာပါ။ဒီစကားလံုးမပါဘဲ Program ကို Rum လိုက္ရင္လိုမိမိေျပာခ်င္တာကို User
ကအလြယ္တကူ နားလည္ႏုိင္မွာမဟုတ္ဘဲရွူပ္ေနတာေတြရပါမည္။ေပၚေစခ်င္တာ
က "Do you want to hide Run Dialogbox(Y/N)?"ဆိုတဲ႕စာသားဘဲေပၚေစခ်င္တာပါ။လက္
ေတြမွာေတာ႕@echo off ဆိုတဲ႕ Key Wordမပါတဲ႕အတြက္ Display Windows
မွာအျခားမလိုအပ္တဲ႕စားသားေတြအမ်ားၾကီးေပၚေနျပီး
မိမိကဘာဆိုလိုတယ္ဆိုတာကို user ကအလြယ္တကူနားလည္ႏုိင္မွာမဟုတ္ပါ။


echo
echo ။မိမိေဖာ္ျပခ်င္တဲ႕စာသားေတြကို Display Windows မွာ Output ထုတ္ျပႏုိင္ဖို႕ဒီ
Key Word ကိုသံုးပါတယ္။Script ေရးတဲ႕အခါ Display Windows မွာေပၚေစခ်င္တဲ႕စကား
လံုးေတြကို echo ေနာက္မွာ space bar တစ္ခ်က္ပုတ္ျပီးရုိက္ထည္႕ရပါမယ္။


echo.
echo. ။echo ေနာက္မွာ fullstop ပါတာကေတာ႕ Display Windows မွာစာေၾကာင္းအ
လြတ္တစ္ေၾကာင္းေဖာ္ျပခ်င္ရင္သံုးတာပါ။ Display Windows မွာစာေၾကာင္းေတြ႕တေၾကာင္းနဲ႕
တေၾကာင္းကပ္ေနရင္ၾကည္လိုမေကာင္းတဲ႕အေျခအေနမ်ဳိးမွာစာေၾကာင္းတေၾကာင္းနဲ႕
တေၾကာင္းၾကားမ်ဥ္းလြတ္တစ္ေၾကာင္း ေပၚေစခ်င္ရင္သံုးပါတယ္။

: -

: - ။Full Column နဲ႕ Under Score သေကၤတႏွစ္ခုပါတဲ႕ဒီ Key Word ကေတာ႕ဒါဟာ
ပရုိဂရမ္တစ္ခု(Script တစ္ခု)ရဲ႕အစိတ္အပိုင္းကေလးတစ္ခုျဖစ္တယ္လို႕ေျပာတာပါ။Script
ေရးတဲ႕အခါဒီသေကၤတႏွစ္ခုအတြဲေလးရဲ႕ေနာက္မွာမိမိေပးခ်င္တဲ႕အမည္ကပ္ျပီးရိုက္ထည္ရ
ပါမယ္။
ဥပမာ :-main
:-subprogram 1
ဒီသေကၤတအတြဲကေလးမပါရင္ ပရုိဂရမ္ Run မွာမဟုတ္ပါ။

colour
colour ။ "colour" ဆိုတဲ႕ Key Word ကေတာ႕ Display Windows မွာေပၚလာမယ္႕
ေအာက္ခံအေရာင္နဲ႕စာလံုးအေရာင္ေတြအတြတ္သံုးတဲ႕ Key Word ျဖစ္ပါတယ္။သူ႕ေနာက္မွာ
Hexa-decimal ဂဏန္းႏွစ္လံုးတြဲတစ္စံုနဲ႕ေဖာ္ျပရပါတယ္။ဥပမာ 0A ဆိုရင္ေရွ႕ကသုညက
Background Colour အနက္ေရာင္လို႕ေျပာတာပါ။ေနာက္က A ဆိုတာက Font Colour အစိမ္း
ေရာင္လို႕ေျပာတာပါ။ဒါေၾကာင္႕ Colour 0A ဆိုရင္ေအာက္ခံအနက္မွာစာလံုးအစိမ္းေရာင္
လိုမ်ဳိးေပၚမွာပါ။တကယ္လိုသာ Colour A ဆိုျပီးဂဏန္းတစ္လံုးတည္းပါရင္ေတာ႕
Background အေရာင္ကိုပံုေသ အေရာင္ျဖစ္တဲ႕အနက္ပဲသံုးမယ္လို႕ကြန္ပ်ဴတာကယူဆျပီး
ေအာက္ခံအနက္မွာစာလံုးအစိမ္းေရာင္နဲ႕ေဖာ္ျပေပးမွာျဖစ္ပါတယ္။ဘယ္စာလံုးသံုးရင္ဘာအ
ေရာင္ေတြရမလဲ သိခ်င္ရင္(Key Word တစ္ခုရဲ႕ Perameter ေတြကိုသိခ်င္ရင္)Start/Run
ကေန Run Dialobox က်လာတဲ႕အခါ cmd လို႕ရုိက္ထည႕္ပါ။Command Window ေပၚလာ
ရင္"color/?" ဆိုျပီးရုိက္ထည္႕ပါ။Enter ႏွိပ္ရင္ဘယ္စာလံုးေတြဟာဘယ္အေရာင္ေတြဆိုတာ
ေတြ႕ရမွာပါ။တျခားKey Word ေတြနဲ႕ပက္သက္လို႕သိခ်င္တာရွိရင္လည္းဒီအ
တိုင္းရွာၾကည္႕ႏုိင္ပါတယ္။



ဆက္ေရးေပးပါဦးမယ္ဗ်ာ ေနာက္ရက္ေပါ႔

[You must be registered and logged in to see this link.]

http://www.myanmaritresource.info

Opera

Opera
MITR Reader



MITR Reader
အေရးအသားကြာေပမယ့္
$ƴǩǾ ရွင္းၿပီးသားေတြနဲ႔ တူေနသလားလို႔။

သူမရွင္းရေသးတာေတြ ၿဖည့္ၿပီးရွင္းေပးမယ္ဆုိရင္ ၀မ္းသာမိမွာ အမွန္ပါဘဲဗ်ာ

sHa92

sHa92
Founder



Founder
အခုလို ၀င္ေရာက္ ေထာက္ၿပေပးတဲ့ Opera ေကာ ၊ အတူတကြ ၀င္ရွင္းေပးသြားတဲ့ ၿမိတ္အလုပ္သမားေလး ကို ေကာ အထူးေက်းဇူးတင္ရိွပါတယ္။

http://www.myanmaritresource.info

sHa92

sHa92
Founder



Founder
က်ေနာ္တုိ႔ရဲ႕ TuT ေလးကို ဆက္လက္ေဆြးေႏြးလိုက္ၾကရေအာင္...
က်ေနာ္ ဒီေန႔ ေဆြးေႏြးၾကည့္မွာကေတာ့ if နဲ႔ parameter ေတြကို ႏိႈင္းယွဥ္ၿပီးေတာ့ program ကို အလုပ္လုပ္ေစတဲ့ နည္းၿဖစ္ပါတယ္။

IF နဲ႕ parameter ကို ဘယ္လုိ တုိက္ဆုိင္စစ္ေဆးမလဲဆုိတာကိုေတာ့ ေအာက္က if ရဲ႕ ေ၇းပံုေရးနည္း (syntax) ကို ၾကည့္ၾကည့္ေပးပါ။

IF [NOT] string1==string2 Command

အေပၚမွာေပးထားတဲ့ Code ကို ေအာက္ကဥပမာေလးနဲ႔ေလ့လာၾကည့္ရေအာင္။

Code:
@echo off
if %1==cp goto COPY
goto DEL

:COPY
Copy %2 C:\Users\Administrator\Desktop\
echo You have copied %2 to your desktop
goto :END

:DEL
Del %2
echo Delete Process Completed.

:END
ဒီ ဥပမာေလးကေတာ့ က်ေနာ္ ဟုိးအရင္ကစာအုပ္တစ္အုပ္ကေနေတြ႔ထားတာေလးပါ။ စာဖတ္သူ ပိုမုိနားလည္ေစဖို႔အတြက္ က်ေနာ္ ၿပန္ၿဖည့္ေရးထားပါတယ္။ သူေရးသြားတဲ့ ပံုစံေလးကေတာ္ေတာ္ ေကာင္းပါတယ္။
(အဲဒီ့စာအုပ္ထဲမွာကေရးသာေရးထားတယ္ Code ကတုိကလည္းတုိေသးတယ္ ရွင္းကမရွင္းၿပထားဘူးဆုိေတာ့ ဘယ္လို ၿပန္ရွင္းရင္ အစ္ကိုတို႔ အစ္မတုိ႔ နားလည္မလဲဆုိတာကို စဥ္းစားလိုက္ရတာ က်ေနာ့္မွာ ေတာ္ေတာ္ တုိင္ပတ္သြားေသးတယ္။ ခုေတာ့ အုိေကသြားပါၿပီ။ သူ႔မူရင္း Code လုိလည္း တုိႏံွ႔ႏွံ႔ဟုတ္ေတာ့ဘူး။ နည္းနည္းရွည္သြားဘီ။ နားလည္ဖို႔လည္း လြယ္သြားပါၿပီ။ [You must be registered and logged in to see this image.])

ဒီ Forum ထဲမွာ code ကို ဒီအတိုင္းၾကည့္ရင္ေတာင္ နားလည္ေနတဲ့ အဆင့္ကို ေရာက္ေနတဲ့သူေတြလည္း ရိွနုိင္ပါတယ္။ နားမလည္ေသးတဲ့သူေတြအတြက္လည္း က်ေနာ္ရွင္းၿပေပးပါ့မယ္။ နားလည္ၿပီးသားဆုိရင္လည္း က်ေနာ္ရွင္းတာ လုိသြားရင္ ၿဖည့္ေၿပာေပးၾကပါဦး။

ဒီဥပမာမွာဆုိရင္ က်ေနာ္တို႔ဟာ parameter ၂ ခုကို သံုးသြားပါတယ္။ ပထမ parameter ကို သံုးထားတဲ့ေနရာကေတာ့ IF statement နဲ႔ cp ဆုိတဲ့ parameter တစ္ခုကို %1 ဆုိတဲ့ user ဆီက ၀င္လာမယ့္ ေကာင္နဲ႔ တုိက္စစ္ပါတယ္။ အကယ္လို႔ တူတယ္ဆုိရင္ေတာ့ COPY ဆုိတဲ့ Function ဆီကို သြားၿပီးေတာ့ copy အလုပ္ကို လုပ္မွာၿဖစ္ပါတယ္။ ဒါမွမဟုတ္ဘဲနဲ႔ မတူခဲ့ရင္ေတာ့ DEL ဆုိတဲ့ Function ဆီကို ေရာက္မွာ ၿဖစ္ပါတယ္။
ဒုတိယ parameter ကေတာ့ %2 ပါ။ %2 ကိုေတာ့ file name ကို လက္ခံရန္အတြက္ အသံုးၿပဳထားပါတယ္။ က်ေနာ္တုိ႔ဟာ 1st parameter မွာ cp မရိုက္ထည့္ဘဲ တၿခားဟာသာ ၀င္လာခဲ့ရင္ေတာ့ DEL Function ဆီကို ေရာက္လာမွာၿဖစ္ၿပီးေတာ့ %2 ၿဖစ္တဲ့ က်ေနာ္တုိ႔ သတ္မွတ္ေပးမယ့္ file က ပ်က္သြားမွာၿဖစ္ပါတယ္။

အေပၚက ဥပမာေလးကို run ရင္ ဘယ္လို run ရတယ္ဆုိတာ ေၿပာၿပေပးပါ့မယ္။ က်ေနာ္ FOR Looping အေၾကာင္းရွင္းၿပခဲ့တုန္းက တစ္ခါ ဒီလုိ ပံုစံမ်ိဳးေရးေပးဖူးပါတယ္။ ေမ့သြားတဲ့ သူေတြ အတြက္ ၿပန္ရွင္းၿပေပးတာပါ။

--------------------------------------Program Run ပံု အဆင့္ဆင့္----------------------------------------
Desktop ေပၚမွာ Test ဆုိတဲ့ နာမည္နဲ႔ Folder အသစ္တစ္ခု အရင္ေဆာက္ပါ။
ၿပီးရင္ အေပၚက Code ေလးကို Notepad ထဲမွာေ၇းၿပီးရင္ေတာ့ အဲဒီ့ Folder ထဲမွာ if.bat နဲ႔ သိမ္းလုိက္ပါ။
သူ႔ရဲ႕ လမ္းေၾကာင္းကေတာ့ (C:\Users\Administrator\Desktop\Test) ဆိုၿပီးၿဖစ္ေနရပါမယ္။
အဲဒီ့ Test ဆုိတဲ့ Folder ထဲကိုဘဲ text file တစ္ခုခု ဒါမွမဟုတ္ၾကိဳက္တာ တစ္ခုခုထည့္ထားပါ။ နာမည္ကိုလည္း ၾကိဳက္တာေပးလို႔ရေပမယ့္ က်ေနာ္ ေၿပာလို႔ လြယ္သြားေအာင္ fortesting.txt နဲ႔ သိမ္းထားပါ။
ၿပီးရင္ Start>>RUN>>cmd ကိုရိုက္ထည့္ပါ။
Command Prompt ပြင့္လာၿပီဆုိရင္ေတာ့ ခုနက if.bat ဖိုင္လမး္ေၾကာင္း(C:\Users\Administrator\Desktop\Test) ဆီကို cd Command သံုးၿပီးေၿပာင္းေပးပါ။
cmd ထဲေရာက္ေနၿပီး လမ္းေၾကာင္းလည္းေၿပာင္းၿပီးသားဆုိပါက

Code:
မိမိ path လမ္းေၾကာင္း>if.bat cp fortesting.txt

Enter ေခါက္လုိက္ပါက You have copied fortesting.txt to your desktop ဆုိတဲ့ စာေလးေပၚလာၿပီးေတာ့ Desktop ေပၚမွာ က်ေနာ္တုိ႔ရဲ႕ Test ဆုိတဲ့ folder ထဲက ဖိုင္ေလးကို copy ကူးၿပီးသားေတြ႔ရပါလိမ့္မယ္။

အကယ္လို႔မ်ား cp ဆုိတဲ့ေနရာမွာ တၿခားတစ္ခုခု ရိုက္ထည့္လိုက္မယ္ဆုိရင္ေတာ့ Delete Process Completed. ဆုိတဲ့ စာေလးေပၚလာၿပီးေတာ့ fortesting.txt ကို Test ဆုိတဲ့ folder ထဲမွာ ပ်က္သြားတာေတြ႔ရပါမယ္။
-------------------------------------------------------------------------------------------------------------------

အထက္ပါ ဥပမာ ကို က်ေနာ္တုိ႔ ေနာက္္တစ္ဆင့္အေနနဲ႔ ပိုမိုေကာင္းမြန္ေအာင္ ၿပဳၿပင္ခ်င္ရင္ ၿပဳၿပင္လုိ႔ရပါေသးတယ္။ ဥပမာ က်ေနာ္တုိ႔ဟာ Program ထဲမွာဘာမွ မရိုက္ထည့္ဘဲနဲ႔ parameter ကို အလြတ္ၾကီးထည့္ေပးလိုက္ရင္ error ၿပေအာင္ေရးလုိက္ဖို႔ပါ။ ဘာမွ မခက္ခဲပါဘူး။ ေအာက္က Code ေလးတစ္ခုေလာက္ထည့္ေပးလိုက္ရံုပါဘဲ။

Code:
@echo off
IF "%1"=="" ECHO Parameter Error

အဲလိုဆုိရင္ေတာ့ Parameter မပါတာနဲ႔ Error Message ကို ၿပေပးမွာပါ။ အဲလိုမ်ိဳးပံုစံတူအေနနဲ႔ က်ေနာ္တုိ႔ဟာ ဒုတိယ parameter ၿဖစ္တဲ့ File Name မွာ အလြတ္ၿဖစ္ေနမေနကို လည္း စစ္ေဆးေပးလို႔ရတယ္ဆုိတာ စာဖတ္သူ အေနနဲ႔ ကိုယ့္ဟာကို စဥ္းစားမိမယ္လို႔ထင္ပါတယ္။

ပထမေရးေပးခဲ့တုန္းက file ၇ိွမရိွစစ္ေဆးသလိုဘဲ ဒီတစ္ေခါက္ parameter စစ္တာမွာလည္း NOT ကို သံုးတာရိွပါတယ္။ သံုးပံုသံုးနည္း အတူတူ ၿဖစ္လုိ႔ မေရးၿပေတာ့ဘူးေနာ္....

ဒီေလာက္ဆုိရင္ Batch File Programming နဲ႔ ဘာေတြ သံုးလို႔ရတယ္ဆုိတာ သေဘာေပါက္လာေလာက္ၿပီလို႔ထင္ပါတယ္။ ဥာဏ္ရိွ၇င္ ရိွသလို ခ်ဲ႕ထြင္ အသံုးၿပဳနုိင္လာပါလိမ့္မယ္။ bat ကို တအားကြ်မ္းသြားရင္ Windows တစ္ခုလုံးကို ေတာင္ ေၿပာင္းၿပန္လွန္လိုက္လို႔ရေသးတယ္။ ဘယ္လိုလုပ္ရလဲဆုိတာေတာ့ ကိုယ့္ဟာကိုယ္စမ္းၾကည့္ၾကေတာ့ေပါ့။ က်ေနာ္ရွင္းၿပတဲ့အထဲမွာေတာင္ အနည္းအက်င္းပါေနၿပီ။ (က်ေနာ့္တုန္းကဆုိရင္ Command Prompt ကေန del လုိ႔ရိုက္လိုက္၇င္ copy လုပ္သြားတာတို႔ copy ဆုိရင္ del တာတုိ႔ အမ်ိဳးမ်ိဳးကလိၾကည့္ဖူးတယ္ဗ်။)

စကားမစပ္ က်ေနာ္ တစ္ခုေလာက္ ေၿပာခ်င္ပါေသးတယ္.. ဟုိေန႔က က်ေနာ့္ရဲ႕ bat tutorial ကို MZ မွာ သြားတင္ၾကည့္တာ အစ္ကုိတစ္ေယာက္က သူက က်ေနာ္ရွင္းၿပတာေတြ နားလည္ပါတယ္တဲ့။ ဘယ္မွာ သံုးရတာတယ္ဆုိတာကိုေတာ့ ခုခ်ိန္ထိမသိေသးလို႔ပါတဲ့။ [You must be registered and logged in to see this image.] အဲဒါ က်ေနာ္ ဘယ္လို ၿပန္ေၿဖလိုက္ရင္ ေကာင္းမလဲဟင္။ ဘယ္လို ၿပန္ေၿဖရမွန္းေတာင္ မသိလို႔ ခုထိ မေၿဖေပးရေသးဘူး။

ဒီေန႔ေတာ့ အခ်ိန္မရေတာ့လို႔ ဒီေလာက္ပါဘဲ။ ဆက္ရန္က်န္ေသးသည္........
$ƴǩǾ

စကားလက္ေဆာင္ >>> Some call it Windows, others the longest batch file of the world <<< [You must be registered and logged in to see this image.]

http://www.myanmaritresource.info

sHa92

sHa92
Founder



Founder
မေန႔က က်ေနာ္ ဖ်ားေနလုိ႔ ပုိစ့္တင္ဖို႔ ပ်က္ကြက္သြားတာ ေတာင္းပန္ပါတယ္။ ဒီေန႔ေတာင္ သိပ္ေနမေကာင္းေသးဘူး။
ဒါေပမယ့္ မလာရင္လဲ မေနနုိင္လုိ႔၊ Very Happy Very Happy Very Happy Very Happy

ဒီေန႔ေတာ့ 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 ၿဖစ္ပါတယ္။ ေအာက္က ဥပမာေလးကို ေလ့လာၾကည့္ရေအာင္ပါ....

Code:
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 တစ္ခုစီကို လက္ခံနုိင္ပါလိမ့္မယ္။ ဥပမာ...
Code:

@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 တစ္ခုကို ေရြးခုိင္းလုိက္တာပါ။ ဥပမာအားၿဖင့္....

Code:
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 ေလးေတြေရးၾကည့္ၾကေပ့ါ... ေပ်ာ္ဖို႔ေကာင္းပါတယ္။

ေစာင့္ေမွ်ာ္ဖတ္ရႈေပးသူမ်ားကို ေက်းဇူးတင္လ်က္...
$ƴǩǾ

http://www.myanmaritresource.info

sHa92

sHa92
Founder



Founder
ဒီေန႔ေတာ့ က်ေနာ္ IF ERROR LEVEL နဲ႔ CHOICE ကို ေပါင္းၿပီးေရးသားနည္းကို ေၿပာၿပေပးပါမယ္။

ပထမဦးစြာ က်ေနာ္တုိ႔ဟာ CHOICE command က Error Level ကို ဘယ္လိုပံုစံမ်ိဳးနဲ႔ Return ၿပန္ေပးတယ္ဆုိတာ သိထားဖို႔လုိပါေသးတယ္။
CHOICE command ကေတာ့ က်ေနာ္တုိ႔ Program Run ေနတုန္းမွာ key တစ္ခုခုႏွိပ္တဲ့အေပၚမူတည္ၿပီးေတာ့ ERROR LEVEL ကို return ၿပန္ေပးသလို /C မွာ ပါတဲ့ ၾကိဳတင္သတ္မွတ္ထားတဲ့ Key တစ္ခုခုေပၚမူတည္ၿပီးေတာ့ လည္း return ၿပန္ေပးပါတယ္။ ေအာက္က ဥပမာေလးကို ၾကည့္ၿပီးနားလည္မွာပါ...

Code:
CHOICE /C:SY12

Error Level ေတြကို မေလ့လာခင္မွာ က်ေနာ္တုိ႔အေနနဲ႔ တစ္ခုသိထားရမွာက Error Level Code ေတြရဲ႕ တန္ဖိုးဟာ User ရိုက္ထည့္လုိက္တဲ့ key ေပၚမူတည္ၿပီးေတာ့ ေၿပာင္းလဲေနနုိင္ပါတယ္ဆုိတာပါ။ ဆုိလိုတာကေတာ့ အေပၚက Code မွာဆုိရင္ S ကို ႏွိပ္ရင္ ရမယ့္ Error Level က 1 , Y ကို ႏွိပ္ရင္ေတာ့ 2 , 1 ကို ႏွိပ္မယ္ဆုိရင္ေတာ့ 3 ၿဖစ္ၿပီးေတာ့ 2 ကို ႏွိပ္မယ္ဆုိရင္ေတာ့ ရရိွမယ့္ error level က 4 ဆုိၿပီးရရိွလာမွာပါ။ ဒီေလာက္ ဆုိရင္ေတာ့ က်ေနာ္တုိ႔ဟာ CHOICE command အေနနဲ႔ ဘယ္လုိဘယ္ပံုမ်ိဳးနဲ႔ ERROR Level ေတြကို Return ၿပန္တယ္ဆိုတာ သိသြားပါၿပီ။

အခု ဆက္လက္ၿပီးေတာ့ IF ERROR LEVEL command က ဘယ္လိုအလုပ္လုပ္တယ္ ၊ သူ႔ကို ဘယ္လိုသံုးတယ္ဆုိတာေလ့လာပါမယ္။ သူ႔ရဲ႕ ေရးသားပံုေရးသားနည္းကေတာ့...

Code:
IF [NOT] ERRORLEVEL number command

အဲဒီ့ေကာင္ကေတာ့ လက္ရိွ Error ေပၚမူတည္ၿပီးေတာ့သာ အလုပ္လုပ္မွာၿဖစ္ပါတယ္။ လက္ရိွ ေပးထားတဲ့(စစ္ထားတဲ့) အေၿခအေနတစ္ခု (Error Level တစ္ခု) ဟာ မွန္တယ္ဆုိေတာ့မွ Program က အလုပ္လုပ္မွာပါ။ အဲဒါကို ဥပမာ နဲ႔ ေလ့လာၾကည့္ရေအာင္...

Code:
IF ERRORLEVEL 3 ECHO OK

အေပၚက Code ကို run မယ္ဆုိရင္ေတာ့ အကယ္လို႔ က်ေနာ္တုိ႔ရဲ႕ လက္ရိွ Error Level ကသာ 3 ၿဖစ္မယ္ဆုိရင္ OK ဆုိတာကို အမဲေရာင္စကရင္မွာ ၿမင္ရမွာပါ။

မွတ္ရန္ ၊၊ ၊၊ အေရးအၾကီးဆုံး တစ္ခ်က္ကေတာ့ Error Level ကို If နဲ႔ စစ္တဲ့ အခါမွာ စစ္လုိက္တဲ့ error level နဲ႔ ရလာမယ့္ error level ဟာ တူရင္တူ ၊ မတူရင္ၾကီးေနမွ Program အလုပ္လုပ္ပါမယ္။

အေပၚက Code မွာ ဆုိရင္ Error Level ဟာ 3 ထက္ၾကီး၇င္ၾကီး မၾကီးရင္တူမွ Program အလုပ္လုပ္မွာၿဖစ္ပါတယ္။

အခုဆုိရင္ေတာ့ က်ေနာ္တုိ႔ဟာ CHOICE နဲ႔ IF ERROR LEVEL အေၾကာင္းနားလည္သြားၿပီၿဖစ္လို႔ သူတုိ႔ ၂ ခုကို ေပါင္းစပ္ၾကည့္ဖို႔ ၾကိဳးစားရပါေတာ့မယ္။ တကယ္ေတာ့ ၾကိဳးစားစရာေတာင္မလုိေတာ့ပါဘူး သူတုိ႔ ၂ ခုကို တစ္ခုခ်င္းစီကို ေသခ်ာနားလည္ေနၿပီဆုိရင္ကို ေပါင္းစပ္ဖို႔က ေတာ္ေတာ္ေလး လြယ္သြားပါၿပီ။
သူတုိ႔ ၂ ခုကို အေသအခ်ာ ေပါင္းစပ္တတ္မယ္ဆုိရင္ေတာ့ က်ေနာ္တုိ႔ဟာ Bat နဲ႔ Menu Based Program ေတြကို အလြယ္တကူ ေရးသားနုိင္တဲ့ အေၿခအေနကို ေရာက္လာၿပီလုိ႔ဆုိရပါလိမ့္မယ္။ ေအာက္က ဥပမာေလးကို ေလ့လာၾကည့္ရေအာင္။ အဲဒီ့ ဥပမာဟာဆုိရင္ေတာ့ User ဆီကေနၿပီးေတာ့ အသံုးၿပဳဖို႔ Browser တစ္ခုကို Menu အေနနဲ႔ ေရြးခိုင္းတာပါ။
(ဒီေနရာမွာ က်ေနာ္ တစ္ခုၿပန္ေၿပာခ်င္တာကေတာ့ က်ေနာ္ အရင္က Site Selection Batch ဆုိၿပီးေတာ့ bat file တစ္ခု ဒီဖိုရမ္ထဲမွာ ေရးေပးခဲ့ဖူးပါေသးတယ္။ အဲဒါေလးနဲ႔ အခုဥပမာ ၿပမယ့္ဟာက သေဘာတရားတူေနလို႔ က်ေနာ္ သတိရလုိ႔ ၿပန္ေၿပာတာပါ။ အခု Post ကို ဖတ္ၿပီးရင္ အဲဒီ့ site selection batch ကို မဖတ္ရေသးရင္ သြားဖတ္ၿပီးေတာ့ ေလ့လာလုိက္ပါ။ Code ေတြကို အလြယ္တကူ နားလည္ပါလိမ့္မယ္။)
ကဲ ေအာက္က ဥပမာ ဆီဆက္လုိက္ရေအာင္....

Code:
@ECHO OFF
ECHO.
ECHO.
ECHO Welcome to Browser Selection Program
ECHO.
ECHO 1. Internet Explorer
ECHO 2. Mozilla Firefox
ECHO x. Exit Browser Selection Program
ECHO.
CHOICE "Please Choose Your Browser" /C:12x /N
IF ERRORLEVEL 3 GOTO END
IF ERRORLEVEL 2 START C:\progra~1\firefox.exe
IF ERRORLEVEL 1 start c:\progra~1\intern~1\iexplore.exe
:END

သတိၿပဳရန္ >> အေပၚက Code မွာ IF ERROR LEVEL ကို အမ်ားကေန အနည္း (၃ ကေန ၁) ကို ငယ္စဥ္ၾကီးလုိက္စီထားတာကို သတိၿပဳမိေစခ်င္ပါတယ္။

က်ေနာ္ ဒီေန႔ေတာ့ က်ေနာ့္ Tutorial ၊ က်ေနာ့္ ေရးသားပံု ၊ ေဆြးေႏြးပံု ဘယ္ေလာက္ထိေရာက္တယ္ ဆိုတာကို စမ္းသပ္တဲ့အေနနဲ႔ အေပၚက ဥပမာ ၿပလုိက္တဲ့ Code ကို အစအဆုံးမရွင္းၿပေတာ့ပါဘူး။
လြယ္လည္း လြယ္လုိ႔ပါ။ ၾကည့္လိုက္တာနဲ႔ကို ဘာကဘယ္လိုဆုိတာ သိနုိင္ပါတယ္။ အရင္ကလုိ က်ေနာ္ အစအဆုံး ရွင္းၿပေနရင္ အစ္ကို ၊ အစ္မ တုိ႔အေနနဲ႔လည္း တကယ္နားလည္မလည္ ဆုိတာ ကိုယ္တုိင္မသိနုိင္ဘူးၿဖစ္ေနပါလိမ့္မယ္။ အဲဒီ့ေတာ့ အခု က်ေနာ္ေပးတဲ့ ဥပမာကို မဖတ္ခင္ အေပၚက CHOICE နဲ႔ IF ERROR LEVEL ဆုိတဲ့ Command အေၾကာင္းကို အရင္ဖတ္ပါ ၊ သူတို႔ ၂ ခုကို နားလည္ၿပီဆုိမွ ဒီ ဥပမာကို ဖတ္ပါ။ အကယ္လို႔ CHOICE နဲ႔ IF ERROR LEVEL command ေတြကိုသာ တကယ္နားလည္သြားၿပီ ဆုိရင္ ဖတ္ရင္းနဲ႔တင္ ဒီဥပမာကို သေဘာေပါက္ေနပါၿပီ။ အဲဒီ့လုိဆုိရင္ က်ေနာ္ ေရးေပးရက်ိဳးလည္းနပ္ပါၿပီ။ အကယ္လို႔ အဲလိုလုပ္တာေတာင္ နားမလည္ဘူးဆုိရင္ေတာ့ က်ေနာ့္ေရးသားတင္ၿပပံု ၊ ေဆြးေႏြးပံုေတြ တစ္ခုမွမေကာင္းဘူးဟုသာ Feedback ေပးခဲ့ပါ။ က်ေနာ္လည္း ဘယ္ေသာအခါမွ Tutorial ဆုိတာေတြကို ကိုယ္တုိင္လည္း ဆက္မေရးေတာ့သလို ၊ ဘာသာၿပန္ၿပီးေတာ့ေတာင္ မေရးေတာ့ပါဘူး။

အခုေတာ့ က်ေနာ္ ကိုယ္တုိင္ ဒီ Bat ပိုင္းကို ၿပန္လည္စိတ္ပါလာၿပီၿဖစ္လို႔ အစက IF နဲ႔ တင္ရပ္လိုက္ေတာ့မလုိ႔ဟာ အခု CHOICE ရယ္ Error Level အထိပါေရာက္လာပါၿပီ။ ေနာက္ရက္ေတြလည္း bat နဲ႔ ပတ္သက္လုိ႔ ဆက္ေရးေပးဖို႔ စာၿပန္ဖတ္ေနပါတယ္။ ေရးသင့္မေရးသင့္ကေတာ့ အခု Post တင္ၿပီး ၿပန္၀င္လာတဲ့ Feedback ေတြေပၚမူတည္ၿပီး ဆုံးၿဖတ္သြားမွာပါ။ Feedback က အမ်ိဳးမ်ိဳးရနုိင္ေတာ့ က်ေနာ္ (၃) ရက္ ေစာင့္မယ္လို႔ ေမွ်ာ္မွန္းထားပါတယ္။ အဲလိုေစာင့္ရတာကေတာ့ က်ေနာ္က ဒီဖိုရမ္မွာတင္မဟုတ္ဘူး တၿခားဖိုရမ္ေတြမွာပါ လိုက္တင္ထားလို႔ပါ။ (၃) ရက္ဟာ လုံေလာက္တဲ့ Feedback ရနုိင္တဲ့ အခ်ိန္လို႔ထင္လုိ႔ေစာင့္တာ ၿဖစ္ပါတယ္။ အဲဒီ့ ေစာင့္ေနတဲ့ (၃) ရက္တာ ကာလအတြင္းမွာေတာ့ က်ေနာ့္အေနနဲ႔ Reversing Tutorial ေတြ ေရးမယ္လုိ႔ စိတ္ကူးထားပါတယ္။ Reverse Engineering နဲ႔ ပတ္သက္လုိ႔ကေတာ့ က်ေနာ္ကိုယ္တုိင္လည္း စတင္ေလ့လာသူဆုိေတာ့ သိပ္မသိေသးလုိ႔ ေလ့လာမိသေလာက္ ေတြကိုသာ ေရးၿဖစ္ဦးမွာပါ။ ဒါေပမယ့္ အခု bat file လုိေတာ့ ဖိုရမ္ေတြမွာ လိုက္ၿပီးတင္မွာ မဟုတ္ပါဘူး။ က်ေနာ္ မေန႔ကမွ ဖြင့္လိုက္တဲ့ဘေလာ့ေလး နဲ႔ က်ေနာ့္ ဖိုရမ္မွာ တင္ၿပီးေတာ့ ၄ ခု ၊ ၅ ခုေလာက္တစ္ခါ E-BOOK လုပ္ၿပီးမွ ဖုိရမ္ေတြမွာ ၿပန္မွ်ေ၀မယ္လို႔လည္းစိတ္ကူးထားပါတယ္။ ဒီစိတ္ကူးေတြ လက္ေတြ႔ ၿဖစ္မၿဖစ္ကေတာ့ က်ေနာ္ ကိုယ္တုိင္ေတာင္ အေသအခ်ာ မသိလုိ႔ ကတိမေပးနုိင္ပါဘူး... အဲဒီ့ေတာ့ စိတ္ကူးအေနနဲ႔သာ ၾကိဳတင္ေၿပာထားရင္း ဒီေန႔ေတာ့ ဒီေလာက္နဲ႔ နားပါရေစဦး...

Feedback မ်ားႏွင့္ ပတ္သက္၍ က်ေနာ္လက္ခံထားေသာ ေဆာင္ပုဒ္...
“သင့္ကို လက္ခံတဲ့သူ အေယာက္ ၁ ေထာင္ ရိွေနၿပီလား ၊ နည္းေနေသးပါတယ္ ၊ ဆက္ၾကိဳးစားပါ။
သင့္ကို ကန္႔ကြက္တဲ့သူ ၁ ေယာက္ ရိွေနၿပီတဲ့လား ၊ မ်ားလြန္းေနၿပီ ၊ ထုိသူ လက္ခံလာေအာင္ အခ်ိန္မီ ၿပဳၿပင္ပါေတာ့။”


Feedback မ်ားကို ေစာင့္ေမွ်ာ္လ်က္
$ƴǩǾ

http://www.myanmaritresource.info

C0D3R

C0D3R
MITR Master



MITR Master
ေကာင္းပါတယ္ညီေရ
ဆက္ေရးပါ

အစ္ကိုကေတာ႔ေစာင္႔ဖတ္ေနတယ္ေနာ္

http://www.myanmaritresource.info

sHa92

sHa92
Founder



Founder
အစ္ကိုလည္း သိသေလာက္ ၀င္ေဆြးေႏြးဦးေလ။

http://www.myanmaritresource.info

C0D3R

C0D3R
MITR Master



MITR Master
ဟုတ္႕ကဲ႔ပါတင္ေပးပါဦးမယ္

ကၽြန္ေတာ္အ၇င္ကတင္ထားတဲ႔အဆက္ကိုထပ္တင္မယ္ဆို၇င္၇မလားဟင္

တူေနလားလို႔

CODE ေတြကို အလုပ္လုပ္ပံုကိုေဖာ္ျပတာေလ

တစ္ေယာက္တစ္မ်ိဳး၇ွင္းျပ၇င္လည္းေကာင္းမယ္ထင္တယ္ေနာ္

ဘယ္လိုသေဘာရလဲဟင္

http://www.myanmaritresource.info

sHa92

sHa92
Founder



Founder
ၾကိဳက္သလုိသာလုပ္ပါ။
ဒါေပမယ့္ Code ေတြအတူတူရွင္းၾကမယ့္အစား က်ေနာ္လုိေနတာကို ထပ္ၿဖည့္သြားရင္ပိုေကာင္းတာေပါ့
OK?

http://www.myanmaritresource.info

Cl0uD(FF7)

Cl0uD(FF7)
MITR Reader



MITR Reader
$ƴǩǾ ေျပာတာကိုပိုလက္ခံပါတယ္...Code တစ္မ်ဳိးတည္းကို ႏွစ္ေယာက္က ေရးမယ္ဆိုေတာ့ ေရးတဲ့ပံုခ်င္းမတူရင္ ဖတ္တဲ့သူက ႏွစ္မ်ဳိးထင္သြားႏိုင္ပါတယ္... $ƴǩǾ ေရးထားတာအေတာ္ကိုေကာင္းပါတယ္...ဆက္ေရးေပးဖို႔ေတာင္းဆိုပါတယ္...

C0D3R

C0D3R
MITR Master



MITR Master
ဟုတ္ကဲ့ပါ အခု က်ေနာ္ ေရးေပးမွာကေတာ့ Windows Application တစ္ခုကို ဘယ္လို ေခၚ Run မလဲဆုိတာပါ
ေအာက္မွာေပးထားတဲ့ Code ကို Notepad မွာရိုက္ထည့္ၾကည့္ပါ့မယ္...

Code:
@echo off
echo I am testing to call Notepad.exe
start /MIN notepad
pause

အဲဒါကို save ၿပီးေတာ့ Run မယ္ဆုိရင္ေတာ့ ေအာက္မွာ ၿပထားတဲ့ အတုိင္းေပၚလာပါလိမ့္မယ္။

Quote:
I am testing to call Notepad.exe
(အဲဒါလာၿပီးရင္ Notepad က minimized အေနအထားနဲ႔ ေပၚလာပါလိမ့္မယ္။ /MIN ေနရာမွာ /MAX လို႔ထားရင္ေတာ့ maximized အေနအထားနဲ႔ ေပၚမွာပါ)
Press any key to continue...

ညီေရအဲဒီမွာဒါေလးမွားေနလားလို႔

start /MIN notepad

အစ္ကိုလုပ္တာ notepad.exe မွအဆင္ေျပတယ္ျဖစ္ေနတယ္

နည္းနည္းေလာက္ျပန္ၾကည္႔ေပးဦး

ေ၀ဖန္တာမဟုတ္ဘူးေနာ္

ဆက္ေရးပါ

http://www.myanmaritresource.info

C0D3R

C0D3R
MITR Master



MITR Master
ေရးလက္စနဲ႔မို႔တင္ေပးလိုက္တယ္
တူေနရင္လည္းဖ်က္ပစ္နိုင္ပါတယ္ဗ်ာ

$ƴǩǾ ေရ ညီရွင္းျပတာကိုလည္းအစ္ကိုသိခ်င္ေသးတယ္ေနာ္

reg add

reg add ။Registry ထဲကိုတန္ဖိုးတစ္ခုခုထည္႕ခ်င္တဲ႕အခါဒီ Key Word ကိုသံုးပါတယ္။သူ႕မွာ Parameter ေတြရွိပါတယ္။အသံုးမ်ားတဲ႕ Parameter ေတြကေတာ႕/v၊ /ve၊ /t၊ /d ၊ /f တို႕ပဲျဖစ္ပါတယ္။

/v

*/v ဆိုတာက Value တစ္ခုကုိနာမည္ေပးခ်င္တဲ႕အခါသံုးပါတယ္။reg add ရဲ႕ေနာက္မွာ Space တစ္ခ်က္ျခားျပီး /v ကိုေရးရပါတယ္။ျပီးရင္ Space တစ္ခ်က္ျခားျပီးကိုယ္လိုခ်င္တဲ႕ Value ကိုရုိက္ထည္႕ရပါမယ္။

/ve
*/ve ဆိုတာက Value name ကို User ကမေပးပါ။စက္ကသတ္မွတ္ထားတဲ႕ Default ဆိုတဲ႕အမည္ပဲသံုးမယ္လို႕ေျပာခ်င္တဲ႕အခါမ်ဳိးမွာ သံုးပါတယ္။

/t
*/t ဆိုတာက Value ရဲ႕ Data Type ကိုေၾကညာတာပါ။Data Type အမ်ဳိးစား(၅)မ်ဳိးထဲကဘယ္ Data Type ကိုသံုးမယ္ဆိုတာ /t ခံျပီးေၾကညာရတာပါ။ဥပမာ REG_DWORD Data Type ကိုသံုးမယ္ဆိုရင္ /t reg-
dword ဆိုျပီး /t ေနာက္မွာ Space တစ္ခ်က္ျခားကာကိုယ္သံုးမယ္႕ Data Type ကို ေဖာ္ျပရပါတယ္။/t ဆိုတဲ႕ Parameter မပါခဲ႕ရင္ေတာ႕ Default Data Type အျဖစ္ပံုေသသတ္မွတ္ထားတဲ႕ REG_SZ ဆိုတဲ႕
Data Type ကိုပဲသံုးမယ္လို႕စက္ကယူဆပါလိမ္႕မယ္။

/d

*/d ဆိုတာက Data ကိုေၾကညာတာပါ။ကိုယ္ထားခ်င္တဲ႕တန္ဖိုးကို /d ေနာက္မွာ Space ျခားျပီးေၾကညာထားရပါမယ္။


/f
*/f ဆိုတာက Data တစ္ခုကိုထပ္ထည္႕တာပဲျဖစ္ျဖစ္၊ဖ်က္တာပဲျဖစ္ျဖစ္ လုပ္တဲ႕အခါယခင္သတ္မွတ္ထားတဲ႕ တန္ဖိုးတစ္ခုခုရွိခဲရင္ ယခင္တန္ဖိုးတစ္ခုခုရွိပါတယ္။ဖ်က္မလားလိုပရုိဂရမ္က User ကိုျပန္ေမးပါတယ္။

reg delete
reg delete ။Registry ထဲကရွိျပီးသား Subkey တစ္ခုခု၊Value တစ္ခုခုကိုဖ်က္ခ်င္တဲ႕အခါမ်ဳိးမွာဒီ Key Word ကိုသံုးပါတယ္။Registry ထဲကိုတန္ဖိုးတစ္ခုခုထည္႕ခ်င္လို႕ reg add သံုးရင္ Value name /v ၊သံုးမယ္
Data Type /t ၊သတ္မွတ္ထားတဲ႕တန္ဖိုး /d တို႕ကိုမျဖစ္မေနထည္႕ေပးရပါတယ္။ဒီသံုးခ်က္ျပည္စံုမွာ Registry ထဲကိုတန္ဖိုးတစ္ခုခုထည႕္လို႕/ေျပာင္းလဲလို႕ရမွာပါ။(ျခႊင္းခ်က္က /t မထည္႕လည္းရပါတယ္။မထည္႕ရင္
Default Data Type ျဖစ္တဲ႕ REG_SZ ကိုစက္ကအလိုလိုသံုးပါလိမ္႕မယ္)တန္ဖိုးတစ္ခုခုကိုဖ်က္ခ်င္လို႕ reg delete ကိုသံုးရင္ေတာ႕ Value name /v တစ္ခုထဲကိုဖ်က္တာနဲ႕လံုေလာက္ပါတယ္။မွုလတန္ဖိုးရွိခဲ႕ရင္ျပန္
မေမးနဲ႕။တန္းဖ်က္ေစခ်င္ရင္ /v ေနာက္မွာ Space ျခားျပီး /f ထည္႕ရင္ရပါျပီ။

http://www.myanmaritresource.info

mmkyioo

mmkyioo
MITR New User



Thank for sharing of this tutorial.
After finish,, can i get with PDF ?

sHa92

sHa92
Founder



Founder
@[You must be registered and logged in to see this link.]
Thanks For Your Comment

@[You must be registered and logged in to see this link.]
အစ္ကိုေၿပာတဲ့ အေပၚကတစ္ခုမွာ Notepad.exe ဆိုတာဟုတ္ပါတယ္။ က်ေနာ္က်န္ခဲ့တာေနမွာပါ။ ေက်းဇူးပါ။
ေနာက္တစ္ခုအေနနဲ႔ Reg ကို ထိန္းတာ ကိုေၿပာသြားေပးတာေက်းဇူးတင္ပါတယ္။


@mmkyioo
ဒီသင္ခန္းစာ အားလုံးၿပီးၿပီဆုိရင္ ဒီေနရာမွာဘဲ PDF အေနနဲ႔ ထုတ္ၿပီးမွ်ေ၀ေပးမွာပါ။ အစ္ကိုလည္း ၿဖည့္စြက္၀င္ေရာက္ေဆြးေႏြးေပးပါလား။

http://www.myanmaritresource.info

Cl0uD(FF7)

Cl0uD(FF7)
MITR Reader



MITR Reader
waiting for PDF version Smile hurry Smile hurry Smile

sHa92

sHa92
Founder



Founder
က်ေနာ္ ဒီ Tuto ေလးကို ၃ ရက္ခန္႔ နားခဲ့ရာမွ ဒီေန႔ ၿပန္လည္ ေဆြးေႏြးေပးပါမယ္။
ဒါေပမယ့္ က်ေနာ္ ဒီ Tuto ကို တၿခား ဖိုရမ္ေတြမွာ ဆက္မေရးေတာ့ပါဘူး။ ဘာလို႔လဲဆုိေတာ့ က်ေနာ္ ၃ ရက္တိတိ ေစာင့္ဆုိင္းခဲ့သည့္တုိင္ လုံေလာက္ေသာ Feedback မရလို႔ပါ။
က်ေနာ္ ေရးေနတာ အပိုေတြမ်ားၿဖစ္ေနၿပီလားလို႔ေတာင္ ေတြးမိပါေသးတယ္။ အဲဒါေၾကာင့္ အခု က်ေနာ့္ရဲ႕ ကိုယ္ပိုင္ ဘေလာ့ေလးရယ္ ၊ က်ေနာ့္ဖိုရမ္ေလးၿဖစ္တဲ့ MITR Forum နဲ႔ က်ေနာ့္ ေဘာ္ေဘာ္ေတြ အမ်ားစုေနတဲ့ MMSO တုိ႔မွာဘဲ ဆက္ေရးေပးဖို႔ ဆုံးၿဖတ္လုိက္ပါတယ္။ အကယ္လို႔မ်ားက်ေနာ္ ဆက္ေရးတာကို အားေပးမယ့္သူမရွိရင္ေတာ့ က်ေနာ့္ဘေလာ့ေလးမွာ က်ေနာ့္ဟာက်ေနာ္ဘဲ မွတ္စုအေနနဲ႔ သိမ္းထားလိုက္ပါေတာ့မယ္။
အဲ.. ေၿပာရင္းေၿပာရင္းနဲ႔ နည္းနည္း ေလရွည္သြားၿပီ.... Very Happy Very Happy

ဒီေန႔ က်ေနာ္ေဆြးေႏြးေပးမယ့္ အပိုင္းကေတာ့ Input/Output ရယ္ Redirect လုပ္တာရယ္စတဲ့ အပိုင္းေတြကို ေဆြးေႏြးေပးမွာပါ။ ဒီအပိုင္းကေတာ့ က်ေနာ္ သိပ္မသိလို႔ Internet ေပၚကေန ရွာေတြ႔ထားတာေတြကို ဘာသာၿပန္ထားတာပါ။ က်ေနာ္က အဂၤလိပ္လို သိပ္မဖတ္တတ္လို႔ ဘာသာၿပန္တဲ့အခါမွာ ညံ့ခ်င္ညံ့ေနပါလိမ့္မယ္။ ခြင့္လႊတ္ေပးပါေနာ္။

System တစ္ခုဟာ ပံုမွန္အားၿဖင့္ေတာ့ Output ကို Screen ကေနထုတ္ၿပၿပီးေတာ့ ၊ Input ကိုေတာ့ Keyboard ကေနလက္ခံပါတယ္။ အဲလိုလုပ္တာဟာ လုပ္ရိုးလုပ္စဥ္ သိေနၾက ၿမင္ဖူးေနၾက လူတုိင္းသိတဲ့ လမ္းေဟာင္းၾကီးၿဖစ္တဲ့ အတြက္ က်ေနာ္တို႔ ပ်င္းရတာအမွန္ပါ။
အကယ္လို႔မ်ား Input တစ္ခုခုကို တၿခားတေနရာရာကေန လက္ခံၿပီးေတာ့ Output ကိုလည္း တၿခားေနရာတစ္ခုခုကို သြားထုတ္ႏိုင္ရင္ ေပ်ာ္ဖို႔နည္းနည္းေကာင္းလာမွာေပါ့ေနာ္။ ဟုတ္တယ္ဟုတ္။ Very Happy
အဲလိုလုပ္ဖို႔လည္း နည္းလမ္းရိွပါသတဲ့။

Output ကို Screen ေပၚသက္သက္တင္ၿပတာမဟုတ္ဘဲနဲ႔ တၿခားေနရာမွာ သြားရိွေနေစခ်င္ရင္ေတာ့ က်ေနာ္တုိ႔ဟာ Output Redirection Operator ၿဖစ္တဲ့ > ဆုိတာကို သံုးလို႔ရပါတယ္။
> ဆုိတာက ဘာလုပ္ေပးလည္းဆုိရင္ေတာ့ က်ေနာ္တို႔ Desktop ဒါမွမဟုတ္ တစ္ေနရာရာကို Print Screen ဖမ္းၿပီးေတာ့ Paint ထဲမွာ save လုပ္သလိုပါဘဲ။ သူကလည္း က်ေနာ္တုိ႔ ရဲ႕ bat program က ရလဒ္ေတြ အေၿဖေတြကို မွတ္ၿပီးေတာ့ text file တစ္ခုအေနနဲ႔ သိမ္းေပးတာပါ။

ဥပမာ တစ္ခုအေနနဲ႔ ေၿပာရမယ္ဆုိရင္ေတာ့....
အကယ္လို႔မ်ား က်ေနာ္တုိ႔ဟာ net ဆုိတဲ့ command အေၾကာင္းသိခ်င္လုိ႔ Command Prompt ထဲမွာ help ဆုိတာရိုက္ၿပီးေတာ့ ေမးလိုက္တယ္ဆုိပါစို႔။
အဲဒါဆုိရင္ေတာ့ ထြက္လာမယ့္ အေၿဖေတြက နည္းတာမဟုတ္တဲ့ အတြက္ေၾကာင့္ Screen နဲ႔ လည္းမဆန္႔တာမ်ိဳး ၿဖစ္ႏုိင္သလို ၊ CommandPrompt က minimize ၿဖစ္ေနရင္လည္း scroll ဆင္းသြားတာ တအားၿမန္လြန္းပါတယ္။ အဲဒါဆုိရင္ က်ေနာ္တုိ႔ အေနနဲ႔ လိုခ်င္တဲ့ အေၿဖကို ၿပန္ရွာတဲ့အခါ scroll bar ကိုအေပၚတက္ေအာက္ဆင္းနဲ႔ အလုပ္ရႈပ္လြန္းပါတယ္။
အဲဒီ့ၿပႆနာမ်ိဳးကို ေၿဖရွင္းဖို႔ကေတာ့ Output Redirection ဆုိတဲ့ Operator ေလးကို သံုးၿပီးေတာ့ ထြက္လာမယ့္ ရလဒ္ေတြကို text file ထဲမွာ သိမ္းလိုက္တာ အဆင္အေၿပဆုံးပါဘဲ။
ေအာက္က help > help.txt ဆုိတဲ့ Code ေလးကို Command Prompt ကိုေခၚၿပီးေတာ့ ရိုက္ၾကည့္ပါ။

Code:
c:\ကိုယ္ေပးခ်င္တဲ့လမ္းေၾကာင္း > help > help.txt

အဲဒါဆုိရင္ေတာ့ က်ေနာ္တုိ႔ရိုက္လုိက္တဲ့ Command Prompt Screen ထဲမွာ ဘာမွက်လာမွာေတာ့မဟုတ္ေတာ့ေပမယ့္။ က်ေနာ္တို႔ ေရြးေပးခဲ့တဲ့ လမ္းေၾကာင္းေအာက္မွာ help.txt ဆိုတဲ့ text file ေလး ေရာက္ေနပါလိမ့္မယ္။ သူ႔ကို ဖြင့္ၾကည့္လိုက္ရင္ေတာ့ help ဆုိတဲ့ Command ကို ရိုက္လုိက္ရင္ရလာမယ့္ အေၿဖေတြကို save လုပ္ေပးထားတာ ေတြ႔ရပါလိမ့္မယ္။ OK?

အဲ... တစ္ခုေတာ့ သတိေပးမယ္ေနာ္။ text file ရဲ႕ နာမည္ေပးရင္ အေရးၾကီးဖိုင္ေတြရဲ႕ နာမည္ေတြနဲ႔ သြားမထပ္ပါေစနဲ႔။
ဥပမာ က်ေနာ့္ဆီမွာ က်ေနာ့္ Password ေတြ သိမ္းတဲ့ password.txt ဆုိတဲ့ file ရိွတယ္ဆုိပါစို႔။ အဲဒီ့ password.txt ဆုိတဲ့ နာမည္နဲ႔ ခုနက help.txt ဆိုတဲ့ေနရာမွာ ရိုက္ထည့္လိုက္ရင္ က်ေနာ္ သိမ္းထားတဲ့ Password ေတြအားလုံးကို Overwrite လုပ္ပလိုက္ပါတယ္။
တုိတုိ နဲ႔ လြယ္လြယ္ ေၿပာရရင္ေတာ့ဗ်ာ အဲဒီ့ > ဆုိတဲ့ Operator ေလးက file နာမည္တူေနတာ ေတြ႔ရင္ေတာင္မွ ဘာမေၿပာညာမေၿပာနဲ႔ ရိွၿပီးသား စာေတြကို သူမွတ္ရမယ့္ အေၿဖနဲ႔ overwrite လုပ္လိုက္တယ္ဆုိတာပါ။ အကယ္လို႔မ်ား file နာမည္အတူတူေပးမိခဲ့ရင္ေတာ့ ကိုယ့္အၿပစ္နဲ႔ကိုယ္ေနာ္။ က်ေနာ္ သတိေပးတယ္။ file နာမည္ တူတာမရိွရင္ေတာ့ ကိစၥမရိွပါဘူး။ သူ႔ဟာသူ အလုိလို create လုပ္ေပးသြားလိမ့္မယ္။

ခုနက overwrite လုပ္တတ္တယ္လို႔ သတိေပးလိုက္တယ္ေနာ္။ ဒါေပမယ့္ အဲဒီ့ Overwrite လုပ္တာကို ေၿဖရွင္းဖုိ႔ နည္းတစ္ခုေတာ့ ရိွပါေသးတယ္။ ထပ္ၿဖည့္သြားတဲ့နည္းပါ။
အဲဒါကေတာ့ >> ဆုိတဲ့ Operator သံုးရမွာပါ။ က်ေနာ္တုိ႔ ခုနက ဥပမာမွာဆုိရင္ေတာ့ help.txt ထဲကို help ရုိက္ရင္ထြက္လာမွာေတြ သိမ္းထားၿပီးပါၿပီ။ အဲဒီ့ဟာေတြ အေနာက္မွာ ထပ္ၿဖည့္ခ်င္ရင္ေတာ့ ေအာက္က Code ေလးနဲ႔ စမ္းၾကည့္လိုက္ပါ။

Code:
c:\ခုနက help.txt ရိွတဲ့လမ္းေၾကာင္း > net >> help.txt

Command Prompt ထဲမွာ အဲဒီ့လိုရုိက္လိုက္ရင္ေတာ့ က်ေနာ္တုိ႔ရဲ႕ ရိွၿပီးသား help.txt file ထဲမွာ net command ရဲ႕ အေၾကာင္းေလးကို ထပ္ၿဖည့္ၿပီးသားေတြ႔ရမွာပါ။ ရွင္းမယ္ထင္ပါတယ္ေနာ္။
အလြယ္နည္းမွတ္ထားဖို႔က >> ဆုိတာ ရိွၿပီးသား file တစ္ခုထဲကို စာထပ္ၿဖည့္တဲ့သေဘာပါ။
OK?

က်ေနာ္ ေၿပာရင္းေၿပာရင္းနဲ႔ bat file အေၾကာင္းကေန DOS ဘက္ႏြယ္သြားၿပီထင္တယ္။ အစကတည္းကလည္း Bat နဲ႔ DOS ဆုိတာ အတူတူပါဘဲ။ Very Happy Very Happy အဲဒီ့ေတာ့ က်ေနာ္လည္း ၿပည့္ၿပည့္စံုစံုေလး ေၿပာၿပခ်င္လုိ႔ Internet ေပၚမွာေမႊရင္းနဲ႔ ေတြ႔တာေတြ အကုန္ေပါင္းထည့္ၿပီးေတာ့ ဘာသာၿပန္ေပးလုိက္တာ။ ဟီး... အက်ိဳးေတာ့ရိွပါတယ္။ ဟုတ္တယ္ဟုတ္။ Very Happy Very Happy

DOS ရဲ႕ Command ေတြ အေနနဲ႔ ခုနကလုိမ်ိဳး File ေတြဆီကိုသာ redirect လုပ္ေပးႏုိင္တာမဟုတ္ပါဘူး ၊ အမ်ိဳးမ်ိဳးေသာ Device ေတြဆီကိုလည္း redirect လုပ္ေပးႏုိင္ပါေသးတယ္။ ေအာက္မွာ ဆက္ေလ့လာပါ။

Code:
Command အေနနဲ႔ ရုိက္ရမည့္ အမည္                    Device အမည္

    AUX                                Auxiliary Device (COM1)
    CLOCK$                                Real Time Clock
    COMn                                Serial Port (COM1, COM2, Com3, COM4)
    CON                                Console (Keyboard, Screen)
    LPTn                                Parallel Port (LPT1, LPT2, LPT3)
    NUL                                NUL Device (ဘာမွမရိွတာကို ဆုိလိုတာပါ)
    PRN                                Printer

ဥပမာ အေနနဲ႔ ၾကည့္မယ္ဆုိရင္ေတာ့.... အကယ္္လို႔မ်ား က်ေနာ္တို႔ဟာ directory ရဲ႕ list ကို Print ထုတ္ခ်င္တယ္ဆုိရင္ ေအာက္က Command ကို သံုးလုိ႔ရပါတယ္။

Code:
c:\မိမိ ေရြးခ်ယ္ေသာ ႏွစ္သက္ရာ လမ္းေၾကာင္း>dir *.* > prn

အဲဒါဆုိရင္ စက္နဲ႔ ခ်ိတ္ဆက္ထားတဲ့ Printer ကေန Print ထုတ္ပါလိမ့္မယ္။ တၿခား Command ေတြလည္း သူတုိ႔နဲ႔ ဆုိင္ရာဆုိင္ရာ အလုပ္ကို လုပ္ၾကပါတယ္။
အဲဒီ့မွာ ခက္တာ တစ္ခုက NUL ဆုိတဲ့ Device ပါ။ က်ေနာ္ အစက သူ႔ကို ဘယ္နားမွာ သံုးရမယ္မွန္းမသိခဲ့ဘူးဗ်။
အဲဒါနဲ႔ ေဘာ္ဒါၾကီး ေဂၚဂယ္ ဆီသြားေမးေတာ့ ဒီလုိေလးေၿပာထားေလရဲ႕....

NUL Device ကိုေနာက္တစ္မ်ိဳးအေနနဲ႔ 'bit bucket' လုိ႔ေခၚပါသတဲ့။ သူ႔ကို Redirect လုပ္ခ်င္တဲ့ ဘယ္ေနရာမွာမွ သံုးေလ့မရိွပါဘူး။ ဒါေပမယ့္ လုပ္ခ်င္တဲ့ အလုပ္ၿပီးေၿမာက္ေၾကာင္း Message ၿပခ်င္တာမ်ိဳးမွာေတာ့ သံုးေလ့ရိွပါတယ္။ ဥပမာ... က်ေနာ္တို႔ File တစ္ဖိုင္ကို DOS မွာ COPY လုပ္လုိက္တယ္ဆုိရင္ေတာ့ အလုပ္ၿပီးေၿမာက္ေၾကာင္းကို 1 file(s) coppied. ဆုိၿပီးေတာ့ ၿပတတ္ပါတယ္။ အဲလိုမ်ိဳးကို Redirect လုပ္တဲ့ အခါမွာ ၿပခ်င္တယ္ဆုိရင္ေတာ့....

Code:
C:\မိမိလမ္းေၾကာင္း > copy test.txt > NUL

အဲဒီ့ အေပၚက Code ေလးသံုးလိုက္ရင္ ရပါၿပီ။ အဲဒါဆုိရင္ေတာ့ က်ေနာ္တုိ႔ လိုခ်င္တဲ့ 1 file(s) coppied. ဆုိၿပီးေတာ့ ၿပပါလိမ့္မယ္။ OK?

ဒီေလာက္ဆုိရင္ေတာ့ က်ေနာ္တုိ႔ဟာ Output ကို Redirect လုပ္ၿခင္းနဲ႔ ပတ္သက္ၿပီး သိသြားပါၿပီ။ ေနာက္တစ္ခန္းမွာေတာ့ Input ကို Redirect လုပ္ၾကည့္ပါမယ္။

http://www.myanmaritresource.info

sHa92

sHa92
Founder



Founder
က်ေနာ္ ဒီေန႔ အထိ ေရးေပးထားတဲ့ bat code ေတြနဲ႔ Virus Code ေပါင္းမ်ားစြာ ဖန္တီးႏုိင္ေနၿပီၿဖစ္သလို ၊ Computer ကို အက်ိဳးၿပဳမယ့္ Code မ်ားစြာလည္း ဖန္တီးႏိုင္ေသာ အဆင့္ေရာက္ေနပါၿပီ။
Reg ကို command နဲ႔ ထိန္းခ်ဳပ္ဖို႔ကိုလည္း ကို ၿမိတ္အလုပ္သမားေလး ေရးေပးၿပီးပါၿပီ။ အဲဒါေတြနဲ႔ ေကာင္းတာ လုပ္ႏုိင္သလို ၊ မေကာင္းတာလည္း လုပ္ႏုိင္ပါတယ္။ မိမိကိုယ္တုိင္အေပၚမွာဘဲမူတည္တာပါ။
ၿပီးေတာ့ Windows ရဲ႕ GUI ကို ၿငီးေငြ႔ေနတဲ့ သူေတြအေနနဲ႔ လည္း DOS ကို သံုးၾကည့္ဖို႔ အေၿခခံေကာင္းေကာင္းရေနပါၿပီ။ Command ေတာ္ေတာ္မ်ားမ်ားနဲ႔လည္း Windows ကိုအသံုးၿပဳတတ္ေနေလာက္ၿပီၿဖစ္ပါတယ္။ Programming ကို စတင္ေလ့လာေနဆဲ လူငယ္ ၊ လူၾကီး မေရြးလည္း ဒီ bat ကေန အစၿပဳၿပီးေတာ့ ေရွ႕ဆက္ရမယ့္ Language ေတြအတြက္ အနည္းနဲ႔ အမ်ားေတာ့ SYSTEM ပိုင္းဆုိင္ရာ Concept ေတြမွာ အေထာက္အကူၿပဳမယ္လို႔လည္း ထင္ပါတယ္။

က်ေနာ့္ အေနနဲ႔ ဒီ bat file programming နဲ႔ ပတ္သက္ၿပီးေတာ့ ေရွ႕ဆက္လို႔ ရႏုိင္တဲ့ Professional လိုင္းကို မသိသလို ၊ ဒီ bat ကို ေလ့လာလို႔ ဘာၾကီးေတာ့ ၿဖစ္သြားႏုိင္ပါတယ္ ဆိုတာ မေၿပာတတ္ပါဘူး။
က်ေနာ့္ အေနနဲ႔ ကိုယ္ေတြ႔သိလာတာ အက်ိဳးအၿမတ္ ရလာတာေတြကေတာ့ GUI ကိုဘဲ သံုးေနတဲ့ အလြယ္လိုက္တဲ့ ေခတ္ထဲမွာ DOS ကို သံုးတတ္သြားတယ္ ၊ ေနာက္ၿပီးေတာ့ bat ေသးေသးေလးေတြ ကိုယ့္ဟာကိုယ္ ေရးၿပီးေတာ့ PC ကို ထိန္းခ်ဳပ္ကိုင္တြယ္တာ ၿမန္ဆန္လာပါတယ္။ အဲဒီ့ Bat File ေတြနဲ႔ High Level Language နဲ႔ ေရးထားတဲ့ Program ေတြနဲ႔ ခ်ိတ္ဆက္ၿပီးေတာ့ High Level Language က မလုပ္ႏုိင္တဲ့ အခ်က္ေတြကိုလည္း bat နဲ႔ ၿမန္ၿမန္ဆန္ဆန္ လုပ္ကိုင္လာႏိုင္ပါတယ္။

က်ေနာ့္အေနနဲ႔ ဒီ bat file programming ကို ၉ တန္း တုန္းက စၿပီးေတာ့ ေလ့လာဖူးတာပါ။ အဲဒီ့တုန္းကေတာ့ ဘာေတြမွန္းမသိဘူး။ ရွင္းၿပေပးမယ့္သူလည္း မရိွဘူး။ ခုလို အင္တာနက္လည္း မသံုးခဲ့ရဘူး။ Code ေတြ႔ရင္ မွတ္ထားတယ္။ Code တစ္ခုခ်င္းဆီကို ေလွ်ာက္စမ္းတယ္။ ဘယ္ဟာက Command ၊ ဘယ္ဟာက Operator လည္းမသိဘူး။ သီအုိရီ မသိတဲ့ လက္ေတြ႔သမားတစ္ေယာက္လို ၿဖစ္ခဲ့တာပါ။ အဲဒီ့ကေန က်ေနာ္ ၁၀ တန္းေရာက္ေတာ့ အဲဒါေတြ အကုန္ေမ့ထားလိုက္တယ္။ ၁၀ တန္းၿပီးမွ VB ကိုလည္း စကိုင္ေရာ ၊ ၉ တန္းတုန္းက ငါေလ့လာခဲ့တာ ဘယ္လို အမ်ိဳးအစားေတြပါလား ဆုိၿပီးေတာ့ သိလာခဲ့ပါတယ္။ ၿပီးေတာ့ ဒီ bat ကို ၿပန္ေလ့လာပါတယ္။ အဲဒီ့ေတာ့မွ စနစ္တက်ၿပန္သိခဲ့တာပါ။ ၿပန္ေလ့လာတဲ့ အခါမွာေတာ့ ရည္ရြယ္ခ်က္က virus ေရးဖုိ႔ ၿဖစ္ခဲ့ပါေသးတယ္။ ခုေတာ့ အဲလိုဟုတ္ေတာ့ပါဘူး။ ဗုိင္းရပ္စ္ ေရးခ်င္ေတာ့ဘူး။ သူမ်ားကို ဒုကၡမေပးခ်င္ေတာ့လို႔ ၊ ေကာင္းရာ မြန္ရာေတြ လုပ္ေနပါတယ္။ ယံုတယ္မွလား။ Very Happy Very Happy

ဒီစာေတြ ဘာလို႔ေရးေနရလဲဆုိရင္ေတာ့ က်ေနာ့္ကို Gtalk မွာ လူတစ္ေယာက္က “မင္း Tutorial ၾကီးကို ငါအခ်ိန္ကုန္ခံၿပီးေတာ့သာ ဖတ္လုိက္ရတယ္ ၊ အဲဒါဖတ္ၿပီးေတာ့ ငါဘာလုပ္လို႔ရလဲဆုိတာလည္းမသိရပါလား။ အဲဒါေလ့လာရင္ ငါ့မွာ ဘာအက်ိဳးအၿမတ္ရမွာလဲ။ မင္းကေကာ ဘာလို႔ အက်ိဳးမရိွတာကို ေလွ်ာက္ေရးေနတာလဲ” ဆုိၿပီးေတာ့ ေၿပာသြားပါတယ္။

အဲဒီ့စကားကို ၾကားၾကားခ်င္းတုန္းကေတာ့ က်ေနာ္လည္း ေတာ္ေတာ္ စိတ္ဆုိးသြားပါတယ္။ က်ေနာ္ စေရးကတည္းက ေၿပာသားဘဲ အက်ိဳးမရိွဘူးထင္ရင္ ဆက္မဖတ္ပါနဲ႔လို႔။ ဘာလုပ္လို႔ရတယ္ဆုိတာကလည္း ကုိယ့္ရဲ႕ ဥာဏ္စြမ္း ဥာဏ္စ နဲ႔ ၾကိဳးစားအားထုတ္ ေလ့လာမႈေတြနဲ႔ အမ်ားၾကီးသက္ဆုိင္ပါေသးတယ္။

ဒါေပမယ့္ အဲဒီ့လုိ အေၿပာခံရၿပီးေနာက္တစ္ေန႔က်ေတာ့ MMSO မွာလည္း အစ္ကိုတစ္ေယာက္က က်ေနာ့္ Gtalk က တစ္ေယာက္ က်ေနာ့္ကို ေၿပာသြားသလိုမ်ိဳးေလး အဓိပၸါယ္ခပ္ဆင္ဆင္နဲ႔ ၀င္ေဆြးေႏြးသြားပါတယ္။
ဒါေပမယ့္ သူေရးတဲ့ အေရးအသားကလည္း ေကာင္း ၊ ေရးတာကလည္း အေပၚစည္းကမဟုတ္ေလေတာ့ က်ေနာ္ သူေရးတာေသခ်ာဖတ္ၿပီးေတာ့ စဥ္းစားၾကည့္လုိက္ေတာ့မွဘဲ သေဘာေပါက္သြားေတာ့တယ္။

ဟုတ္ပါရဲ႕ က်ေနာ္ အေၿပာခံရရင္လည္း ေၿပာခ်င္စရာ... က်ေနာ္ ဒီ Tuto ကို ေရးသာေရးလာတယ္။ bat file ေတြ နဲ႔ ဘာလုပ္လို႔ရတယ္။ သူကေတာ့ ဘယ္လို အမ်ိဳးအစားပါ ၊ အဲဒါေတြ တစ္ခုမွ မေၿပာခဲ့ရဘူးဗ်... Very Happy
အဲဒါေၾကာင့္ က်ေနာ္ အခု ဒီစာေလးေရးၿပီးေတာ့ ဘာလုပ္လို႔ရတယ္ ဆုိတာ နည္းနည္း ေၿပာၿပေပးတာပါ။ အရင္က မေၿပာမိခဲ့လို႔ ဘာမွန္းမသိ ဖတ္ခဲ့ရတဲ့ သူေတြကို လည္း အနဴးအညြတ္ ေတာင္းပန္ပါတယ္။ ဒါက က်ေနာ့္ရဲ႕ ပထမဆုံးေရးသားတဲ့ tutorial ေလးၿဖစ္လုိ႔ အမွားအယြင္းေတြပါသြားတာပါ။ ဘယ္ကေန ဘယ္လို စေရးရတယ္ဆုိတာလည္း Guide Line ရွာမေတြ႔ခဲ႔လို႔ပါ။ အားလုံးဘဲခြင့္လႊတ္ေပးပါ။ Very Happy Very Happy
ဒီေလာက္ဆုိရင္ေတာ့ နားလည္ၿပီေပါ့ေနာ္..... bat က ဘာအက်ိဳးရိွတယ္ဆုိတာေလ။ က်ေနာ့္ ကိုယ္ေတြ႔ပါ ေရးေပးထားတယ္ေနာ္။

ဘယ္ေလာက္ Level အထိ သြားႏိုင္တယ္ ၊ Pro က်က် ဘယ္ေလာက္ထိ လုပ္ႏုိင္တယ္ ဆိုတာကေတာ့ အေပၚမွာ ေရးထားသလိုဘဲ မိမိကိုယ္တုိင္နဲ႔သာလွ်င္ ဆိုင္ပါတယ္ဗ်ာ။ ၾကိဳးစားရင္ ၾကိဳးစားသေလာက္ ေတာ္ရင္ ေတာ္သေလာက္ ေအာင္ၿမင္မွာပါ။ ပညာရပ္တစ္ခုကို ေလ့လာထားလုိ႔ အလကားၿဖစ္သြားတယ္ ဆုိတာမရိွပါဘူး။ တစ္ခ်ိန္ခ်ိန္မွာေတာ့ သူ႔ေနရာနဲ႔ သူအက်ိဳးရိွၿပီး အသံုး၀င္မွာပါ။ ေလ့လာထားတာေတာ့ မမွားဘူးထင္တာပါဘဲ။

က်ေနာ့္ ထုံးစံအတုိင္းေလး ဥပမာနဲ႔ ေၿပာရရင္ဗ်ာ က်ေနာ္တုိ႔ ေရကူးသင္ထားတယ္ ဆုိပါေတာ့။ ေရကူးသင္တာ Pro တစ္ေယာက္အေနနဲ႔ ပုိက္ဆံရွာဖို႔ သင္ထားတာေတာ့ မဟုတ္ေပမယ့္ တစ္ခ်ိန္ခ်ိန္ ေရလမ္းခရီးသြားလို႔ ဒုကၡေရာက္ရင္ ေရကူးတတ္ရင္ နည္းနည္းေတာ့ အဆင္ေၿပမွာေပါ့။ ဒါမွမဟုတ္ရင္လည္း ပိုက္ဆံအေရးတၾကီးလိုလို႔ ေရကူးၿပိဳင္ပြဲ၀င္ၿပိဳင္တာ ကံေကာင္းၿပီး ႏိုင္ခ်င္လဲ ႏုိင္သြားႏုိင္တာေပါ့။ ဟုတ္တယ္ဟုတ္။ ေရလည္းမကူးတတ္ ဒုကၡကလည္း ေရာက္ေန ၊ ကိုယ္တတ္ကြ်မ္းတာနဲ႔ ကလည္း အဲဒီ့ေနရာမွာ အသံုးခ်လုိ႔မရရင္ေတာ့ ??? Very Happy Very Happy Very Happy
ထပ္ၿပီးေတာ့ႏိႈင္းၿပေနရင္ သာဓကေတြ ဥပမာေတြနဲ႔ တင္ ေနာက္ထပ္ စာေၾကာင္းေရ ၁၀၀ ေလာက္ရေသးတယ္။ Razz Razz Razz

အဲဒါေၾကာင့္ ဒီ Bat File Programming က Professional တစ္ေယာက္အၿဖစ္ရပ္တည္လို႔ရမွာလားလို႔ ထပ္ေမးရင္ က်ေနာ္ကေတာ့ မသိဘူး ၊ ဒီပိုစ့္ကို ၿပန္ဖတ္လို႔ဘဲေၿဖမွာပါ။ ၿပီးရင္ေတာ့ အဲလိုေမးတဲ့ သူကို ဘယ္ပညာကို ၿဖစ္ၿဖစ္ Pro တစ္ေယာက္ အၿဖစ္ေကာင္းေကာင္းမြန္မြန္ရပ္တည္ႏုိင္မွ ေလ့လာမွာလားလို႔ ၿပန္ေမးလိုက္ခ်င္ပါတယ္။ အဲလို ၿဖစ္ႏုိင္မွ ေလ့လာမယ္ ဆုိရင္ေတာ့လည္း.......................

ဒီ Post ကို တင္လုိက္တာ ဘယ္သူ႔ ဘယ္သူကိုမွ ထိခိုက္ေစခ်င္လို႔မဟုတ္ဘူးေနာ္။ က်ေနာ္လိုသြားတဲ့ အမွားရယ္။ ပညာရပ္တစ္ခုကို ေလ့လာရင္ ဘာေၾကာင့္ေလ့လာၾကတာလဲ ဆုိတာရယ္ကို သိခ်င္လို႔ က်ေနာ့္ အထင္ က်ေနာ့္ အေတြးနဲ႔ ေရးလိုက္တာပါ။ တစ္စံုတစ္ေယာက္ကို တုိက္ရိုက္သို႔ သြယ္၀ိုက္ထိခိုက္မိတယ္ဆုိရင္ေတာ့ က်ေနာ္ ဒီေနရာကေန အႏူးအညြတ္ေတာင္းပန္ပါတယ္။

စာဖတ္သူ ၊ ညီအစ္ကိုေမာင္ႏွမ သူငယ္ခ်င္းမ်ားအားလုံး က်န္းမာရႊင္လန္းၾကပါေစလို႔ ဆုမြန္ေကာင္းေတာင္းရင္းနဲ႔ ဒီေန႔အတြက္ေတာ့ ဒီမွ်နဲ႔ ရပ္နားပါရေစ။ Smile Smile Smile Smile
ေနာက္ေန႔မွာေတာ့ Input Redirect နဲ႔ ၿပန္စမယ္ေနာ္။
ေလးစားစြာၿဖင့္....
$ƴǩǾ

http://www.myanmaritresource.info

Cl0uD(FF7)

Cl0uD(FF7)
MITR Reader



MITR Reader
တစ္ခုေလာက္၀င္ေျပာခ်င္ပါတယ္..အေပၚက $ƴǩǾ ရဲ႕ စာကိုဖတ္ၿပီးေတာ့ေပါ့....ဘယ္လိုသံုးတယ္ဆိုတာကိုလိုက္ေျပာေနရင္....လိုက္ရွင္းေနရင္အခ်ိန္မကုန္ဘူးလား...ဖတ္တဲ့သူေတြကေရာ...ဒါကိုဖတ္ၿပီးေတာ့ ကုိယ့္စိတ္ကူးနဲ႔ကိုယ္ ဘယ္ေနရာမွာသံုးမလဲဆိုတာေလးေတြကိုေတြးၿပီး မစမ္းသပ္ႏိုင္ဘူးလား...ဘယ္သူ႔ဘယ္သူ႔ကိုမွရည္ရြယ္တာမဟုတ္ပါဘူး...ဒီ code ေတြကို ထြင္ေပးသြားတဲ့သူေတြက ထြင္ေပးသြားၿပီးၿပီ...ကၽြန္ေတာ္တို႔ကေနာက္ကလိုက္ေလ့လာတာပါပဲ...အဲ့ဒါေလးကိုေတာင္ ကိုယ့္ဟာကို ခ်ဲ႕ မေတြးႏိုင္ၾကဘူးလား....
ဒီစာေတြ ဘာလို႔ေရးေနရလဲဆုိရင္ေတာ့ က်ေနာ့္ကို
Gtalk မွာ လူတစ္ေယာက္က “မင္း Tutorial ၾကီးကို ငါအခ်ိန္ကုန္ခံၿပီးေတာ့သာ
ဖတ္လုိက္ရတယ္ ၊ အဲဒါဖတ္ၿပီးေတာ့ ငါဘာလုပ္လို႔ရလဲဆုိတာလည္းမသိရပါလား။
အဲဒါေလ့လာရင္ ငါ့မွာ ဘာအက်ိဳးအၿမတ္ရမွာလဲ။ မင္းကေကာ ဘာလို႔
အက်ိဳးမရိွတာကို ေလွ်ာက္ေရးေနတာလဲ” ဆုိၿပီးေတာ့ ေၿပာသြားပါတယ္။

အဲ့ဒီ့စာသားေလးကိုမခံခ်င္လို႔ပါ...ေရးတဲ့သူကလည္း ပညာရပါေစလို႔ေရးေပးတာပါ..လိုအပ္ခ်က္ေတြလည္းရိွမွာေပါ့... ဒါေပမယ့္ ႏွစ္ဖက္စလံုးျပန္ၾကည့္ၿပီးမွေျပာသင့္တယ္... ကိုယ္နားမလည္တိုင္း ကိုယ္မသံုးတတ္တိုင္း... ေရးတဲ့သူမေကာင္းလို႔ ဆိုတာႀကီးကိုပဲ မပံုခ်သင့္ဘူး... ...ကၽြန္ေတာ္ ေတြးမိတာေလး၀င္ေျပာတာပါ

sHa92

sHa92
Founder



Founder
ဟုတ္တယ္
က်ေနာ္လည္း စစခ်င္းကေတာ့ စိတ္ဆုိးတယ္ဗ်
ဒါေပမယ့္ ခုေတာ့ စိတ္မဆုိးေတာ့ပါဘူး
က်ေနာ္ လုိတာလည္း ပါလို႔ အေၿပာခံရတယ္လို႔ဘဲ သတ္မွတ္ထားပါတယ္။

http://www.myanmaritresource.info

C0D3R

C0D3R
MITR Master



MITR Master
ဟုတ္တယ္
က်ေနာ္လည္း စစခ်င္းကေတာ့ စိတ္ဆုိးတယ္ဗ်
ဒါေပမယ့္ ခုေတာ့ စိတ္မဆုိးေတာ့ပါဘူး
က်ေနာ္ လုိတာလည္း ပါလို႔ အေၿပာခံရတယ္လို႔ဘဲ သတ္မွတ္ထားပါတယ္။
ဒါဆိုဆက္ေရးေနာ္ ညီ

bat ဖိုင္ရဲ႔အသံုး၀င္ပံုကိုသိေအာင္ကၽြန္ေတာ္တင္ထားတဲ႔ speaking compurter bat

ကိုသံုးရင္သိမွာပါ

တစ္ခ်ို႔ virus ေတြဆိုရင္ bat နဲ႔ေတာင္ကြိသြားတာဗ်

http://www.myanmaritresource.info

sHa92

sHa92
Founder



Founder
က်ေနာ္လည္း ဖိုရမ္ကို ၿပင္ေနရတာနဲ႔ ဒီရက္ပိုင္း စာမေရးႏုိင္ဘူးၿဖစ္ေနတယ္။
က်ေနာ့္ ပိုစ့္ကို ေစာင့္ေနတဲ့သူေတြရိွတယ္ဆုိတာလည္း သိလိုက္ရလို႔ ဒီေန႔ေတာ့ မရရတဲ့ အခ်ိန္မွာေရးၿပီးတင္ေပးလိုက္ပါတယ္။

ဒီေန႔ က်ေနာ္ေဆြးေႏြးေပးမယ့္ အေၾကာင္းအရာကေတာ့ Input ကို redirect လုပ္ၿခင္းပါ။
သူမွာ့လည္း က်ေနာ္တုိ႔ Output မွာတုန္းက လုပ္ခဲ့သလိုမ်ိဳးပါဘဲ Operator တစ္ခုရိွပါတယ္။ အဲဒါကေတာ့ < ဆုိတာေလးပါ။ Output မွာတုန္းက > ၿဖစ္ၿပီး အခု Input မွာေတာ့ < ပါ။
C တုိ႔ C++ တုိ႔နဲ႔ နည္းနည္းဘဲကြာတယ္ေနာ္။ ဟိုမွာက cout<< နဲ႔ cin>> ေလ... သိပ္မလြဲပါဘူး။ Very Happy
Input Redirection Operator ကို ဘယ္လုိသံုးၾကလဲဆုိတာကေတာ့ ရွင္းပါတယ္ ၊ က်ေနာ္တုိ႔ text file မွာ ရိွတာေတြကို DOS ထဲေၿပာင္းထည့္တဲ့ အခါမ်ိဳးမွာ သံုးၾကတာပါ။ Output တုန္းက DOS ကေန text file ဆီကို လႊဲၿပီးေတာ့ အခု Input မွာေတာ့ text file ကေန DOS ကို လႊဲတဲ့သေဘာပါ။

သူ႔ကိုေတာ့ က်ေနာ္တုိ႔ဟာ Command တစ္ခ်ိဳ႕နဲ႔ တြဲသံုးေလ့ရိွပါတယ္။ အဲဒီ့ Command ေတြကေတာ့ MORE နဲ႔ TYPE ဘဲၿဖစ္ပါတယ္။

MORE ဆုိတာက က်ေနာ္တို႔ရဲ႕ Text File ထဲက စာသားေတြဟာ တအားရွည္တဲ့ အခါမ်ိဳးမွာ Screen တစ္ခ်ပ္စာကို တစ္ခါၿပေပးတဲ့ command ၿဖစ္ပါတယ္။ တနည္းအားၿဖင့္ Scroll ဆဲြရန္လိုတဲ့ စာသားေတြကို Screen Size ဆန္႔သေလာက္ တစ္ခါဆီၿပေပးတဲ့ command ပါ။ သူက Enter တစ္ခါေခါက္ရင္ တစ္လိုင္းဆင္းေပးပါတယ္။ (ေရးထားတာ ရႈပ္လုိ႔ နားလည္ပါ့မလားမသိဘူး)

TYPE ဆုိတာကေတာ့ က်ေနာ္တုိ႔ရဲ႕ Text File ထဲက စာသားရိွသေလာက္ကို တစ္ခါတည္းနဲ႔ Scroll ဆြဲၿပီးၿပတဲ့ Command ပါ။ သူ႔ရဲ႕ Scroll လုပ္သြားတဲ့ speed က တအားၿမန္ေတာ့ ေအာက္ဆုံးေရာက္ၿပီးမွ အေပၚကို တစ္ခါ ၿပန္တက္ရရင္ ၊ စာတအားရွည္တဲ့ အခါမ်ိဳးမွာ အခက္ေတြ႔ႏုိင္ပါတယ္။ (ဒါေကာ နားလည္ရဲ႕လား။ နားမလည္ရင္ ၿပန္ေမးပါေနာ္။)

အဲဒီ့ Command ႏွစ္ခုရဲ႕ အဓိပၸါယ္ကို နားလည္ၾကတယ္ဆုိရင္ေတာ့ ၊ ဘယ္ Command က ကိုယ္နဲ႔ အသင့္ေတာ္ဆုံး ၿဖစ္မယ္။ အသံုးၿပဳမယ့္သူနဲ႔ အသင့္ေတာ္ဆုံး ၿဖစ္မယ္ဆုိတာ စဥ္းစားၿပီး သံုးၾကပါ။ (က်ေနာ္ကေတာ့ TYPE မွ TYPE ဘဲ... More က enter ေခါက္ရတာ လက္ေညာင္းလို႔။ Razz)

ဘာကြာသလဲဆုိတာ ေသခ်ာသိခ်င္ရင္ ေအာက္က Code ကို Command Prompt ထဲမွာ သြားရိုက္ၾကည့္လိုက္ပါ။

Code:
C:\မိမိ import (or) redirect လုပ္မယ့္ file ရိွသည့္လမ္းေၾကာင္း > MORE < filename.txt

Enter ေခါက္လုိက္လို႔ ကိုယ္ import လုပ္ထားတဲ့ Text File ထဲက စာက Screen မဆန္႔ဘူးဆုိရင္ ၊ ----MORE---- ဆုိၿပီးေတာ့ Screen ေအာက္ဆုံးမွာ ပိတ္ထားလိမ့္မယ္။ Enter တစ္ခါေခါက္ရင္ တစ္ခါဆင္းသြား ပါလိမ့္မယ္။

ေနာက္တဆင့္အေနနဲ႔ key strokes ေတြကို DOS ထဲကိုလုပ္တာနဲ႔ ပတ္သက္လို႔ေၿပာၿပေပးပါ့မယ္။
အဲဒီ့အပိုင္းမေၿပာခင္ PIPING အေၾကာင္းေၿပာခ်င္ပါတယ္။

PIPING ဆုိတာကေတာ့ Pipe Operator ဆုိတဲ့ | ဆုိတာေလးကို သံုးၿပီးေတာ့ Input နဲ႔ Output ကို ေရာလိုက္တာပါ။ ဘယ္လို အလုပ္လုပ္လဲဆုိေတာ့ Command တစ္ခုက ထြက္လာတဲ့ Output တစ္ခုကို ၊ အၿခား Input တစ္ခု အၿဖစ္ သံုးေပးတာပါ။ (ကိုယ့္ဟာကိုယ္ ၿပန္ဖတ္တာေတာင္ နည္းနည္းရႈပ္ေနသလိုဘဲ Sad မရရင္ ၿပန္ေမးပါေနာ္။ အတတ္ႏုိင္ဆုံး ေၿဖေပးပါမယ္။ က်ေနာ္ သိပ္မအားလို႔ အတုိခ်ဳံ႕ေရးထားရတာပါ။)

နားမလည္မွာစိုးလို႔ ဥပမာနဲ႔ ေၿပာၾကည့္ေပးပါမယ္....
အကယ္လို႔ က်ေနာ္တို႔ဟာ del *.* ဆုိၿပီးေတာ့ command တစ္ခုကို DOS မွာ ရိုက္ထည့္မယ္ဆုိပါေတာ့.... အဲလိုရိုက္ထည့္လုိက္တယ္ဆုိရင္ေတာ့ System က က်ေနာ္တို႔ကို ၿပန္ၿပီးေတာ့ Confirm လုပ္ခိုင္းပါတယ္။ y/n ဆုိၿပီးေပါ့။ အတည္ၿပဳဖို႔ တစ္ခုခု ရိုက္ထည့္ ခိုင္းပါလိမ့္မယ္။ အကယ္လို႔ က်ေနာ္တုိ႔ ဟာ ဖိုင္ေတြကို ဖ်က္မွာ ေသခ်ာတဲ့ အတြက္ y ဆုိၿပီးေတာ့ ႏွိပ္မယ္ဆုိပါစို႕။ ဒါဆုိရင္ သူေမးတာကို မေစာင့္ဘဲနဲ႔ အဲဒီ့ အေမးအတြက္ y ဆုိတဲ့ key ကို Pipe Operator သံုးၿပီးေတာ့ တစ္ခါတည္းေပးလိုက္ပါမယ္။ (ရွင္းတာ နားမလည္ေလာက္ဘူးထင္တယ္...)
နားလည္သြားေအာင္ ေအာက္က Code ကို ၾကည့္ပါ။

Code:
c:\Users\SYKO> echo y | del *.*

အဲဒီ့ Code ကို ၾကည့္ရင္ေတာ့ နားလည္ၿပီထင္ပါတယ္။ echo နဲ႔ y ကို ရိုက္ထုတ္ပါတယ္။ အဲဒီ့အတြက္ y ဟာ အဲဒီ့ အခ်ိန္မွာ output တစ္ခုၿဖစ္ပါတယ္။ သူ႔ေနာက္မွာေတာ့ | ဆုိၿပီးေတာ့ Pipe Operator တစ္ခုသံုးထားပါတယ္။ အဲလိုသံုးထားတဲ့ အတြက္ က်ေနာ္တုိ႔ဟာ del တဲ့ Command ကလိုအပ္တဲ့ import တစ္ခုၿဖစ္တဲ့ y ေနရာမွာ ခုနက ထြက္လာတဲ့ output ၿဖစ္တဲ့ y ကို သံုးလိုက္ပါတယ္။OK? (ဟူး... ဒီေလာက္ ဆုိရင္ေတာ့ သေဘာေပါက္ၿပီထင္ပါတယ္။)

အခုေရးခဲ့တဲ့ နည္းေတြကေတာ့ Input Redirect လုပ္နည္းမ်ားၿဖစ္ပါတယ္။ ပံုမွန္လုပ္ေနၾကၿဖစ္တဲ့ Keyboard ကေန Input သြင္းတာထက္ ၊ မိမိရဲ႕ System ထဲမွာဘဲ Input ကို လွည့္သံုးသြားတဲ့နည္းပါ။ လုပ္ရတာ ေပ်ာ္ဖို႔ေကာင္းတယ္ေနာ္။ (အခု စာဖတ္သူေတာ့ ေပ်ာ္မေပ်ာ္မသိဘူး။ က်ေနာ့္အတြက္ေတာ့ ဒါေတြ ေလ့လာခဲ့ရတဲ့ အခ်ိန္ဟာ ေပ်ာ္ဖို႔ အေကာင္းဆုံးပါဘဲ။ ဘာမွန္းမသိဘဲနဲ႔ Screen မဲမဲၾကီးမွာ စာေတြ က်လာတာကို ေပ်ာ္ခဲ့တာေလ။ အခုေတာ့ ပ်က္ဆီးေနၿပီ... ဘာမွလုပ္ခ်င္စိတ္ ၊ ေလ့လာခ်င္စိတ္မရိွဘူးၿဖစ္ေနတယ္။)

Batch File Programming က တကယ္ေလ့လာရင္ အရမ္းကို လြယ္တဲ့ဟာတစ္ခုပါ။ ၿပီးေတာ့ သံုးတတ္ရင္ သံုးတတ္သလို အက်ိဳးလည္းရိွၿပီးေတာ့ ၊ သံုးရတာလည္း တကယ္ ေပ်ာ္ဖို႔ ေကာင္းပါတယ္။ သူ႔ကိုေလ့လာခ်င္တယ္ ဆုိရင္လည္း တၿခားဟာေတြလို မ်ားမ်ားစားစား knowledge ရိွစရာမလိုပါဘူး။ DOS Command ေတြကို နည္းနည္းပါးပါး အကြ်မ္းတ၀င္ရိွတယ္ဆုိရင္ဘဲ လုပ္စားလို႔ရေနၿပီ။ Very Happy
DOS Command ေတြနဲ႔ ပါတ္သက္လို႔ ေလ့လာလို႔ရတဲ့ site ေတြ အမ်ားၾကီးရွိပါတယ္။ အဲဒီ့မွာေလ့လာပါ ၊ ဖတ္ပါ ၊ မွတ္ပါ ၊ သင္ယူပါ ၊ ကိုယ္တုိင္လုပ္ၾကည့္ပါ။ အဲလို site ေတြမွာ တစ္ခါတစ္ေလဆုိရင္ DOS ရဲ႕ Hidden Command ေတြလည္း မေရမတြက္ႏုိင္ေအာင္ရွိေနတတ္ပါတယ္။ အဲလိုလုပ္ၿပီးေတာ့ ေလ့လာလုိက္မယ္ဆုိရင္ Batch File Programming မွာ ဆရာတစ္ဆူၿဖစ္လာႏုိင္တယ္။ Very Happy အေပၚမွာေရးခဲ့ဖူးတုန္းကလုိဘဲ ဆရာတစ္ဆူၿဖစ္ရင္ ဘာလုပ္လို႔ရလဲေတာ့ မေမးၾကနဲ႔ေနာ္။ က်ေနာ္လည္း Bat ကို အိတ္စပါတ္ မဟုတ္သလို စပယ္ရွယ္လစ္ လဲဟုတ္ဘူး။ ဘာလုပ္လုိ႔ရလဲဆုိတာလည္း ကိုယ့္ေပၚဘဲမူတည္တယ္ေနာ္။ က်ေနာ္ ေၿပာတာ ၂ ခါရိွၿပီ... ထပ္ေမးၾကနဲ႔ Razz Razz Razz)

ဒီေန႔ေတာ့ ဒီေလာက္ဘဲေနာ္။ ေနာက္တစ္ခါ ဘာေရးရမယ္မွန္းက ခုထိမသိေသးလို႔ ၊ ဒီေန႔ေတာ့ ေနာက္တစ္ေခါက္ ဘာေဆြးေႏြးမယ္ဆုိတာ ၾကိဳမေၿပာခဲ့ေတာ့ဘူးေနာ္။ တားတားဖိုရမ္လည္း ၿပင္ဆင္ေနရေသးလို႔ ၊ က်န္တာ ေခါင္းထဲ သိပ္မ၀င္ဘူး ၿဖစ္ေနတယ္။ Very Happy Very Happy Very Happy ေနာက္တစ္ခါ ပိုစ့္တင္မွ ဘာအေၾကာင္းလဲဆုိတာ ၾကည့္ေပေတာ့။ တာ့တာ..... Razz Razz

စာဖတ္သူအေပါင္း က်န္းမာေပ်ာ္ရႊင္ၿပီး ကြန္နက္ရွင္ေကာင္းေကာင္း ရၾကပါေစ
$ƴǩǾ

http://www.myanmaritresource.info

ဘီလူး

ဘီလူး
Reviewer



Reviewer
$ƴǩǾ ေရညီေလးေရးၿပီး သမွ် batfile သင္ခန္းစာေတြကို အစ္ကို pdf ေၿပာင္းထားပါတယ္...........ဒါေပမယ့္ web ေပၚကေန direct ေၿပာင္းၿခင္းၿဖစ္တဲ့အတြက္ အၿပင္အဆင္ေတြလြဲေနပါတယ္ကြာ................ဒါေၾကာင့္လင့္တစ္ခုအေနနဲ ့မတင္ၿဖစ္ေသးပါဘူး .........ဒါေပမယ့္လိုခ်င္တဲ့သူရွိရင္ေတာ့..........ကြ်န္ေတာ့္ဆီ pm ပို ့ေပးထားပါေနာ္.........ကြ်န္ေတာ္လင့္တင္ေပးပါ့မယ္..........ေလာေလာဆယ္ေတာ့ညီေလးရဲ ့ခြင့္ၿပဳခ်က္နဲ ့..........အၾကမ္းထည္ၿဖစ္ေနလို ့အစ္ကိုလင့္မတင္ေသးပါဘူး.......

nay@zaw

nay@zaw
VIP Member



VIP Member
window သံုးသမွ် batch ကေတာ္ေတာ္ အသံုး၀င္ပါတယ္ ။ ဒီက အကိုေတြေတာ္ေတာ္ေလ့လာထားတာပဲ ။ က်ေနာ္ ေတာ့ ေရးတတ္ယံုနဲ႔ ဖတ္တတ္ယံုေလာက္ပဲ သိတယ္ bat ကို ။ ဒီဆိုဒ္ရဲ့ က်ေနာ္ ပထမဆံုး စိတ္၀င္စားဆံုး ပိုစ္ပါ ။ Smile အားေပးေနပါတယ္ဗ်ာ ကို skyo Smile

ET

ET
Moderator



Moderator
ညီေရ
အားရင္ ဆက္ေရးေပးပါဦး
အကိုလည္း ေစာင့္ဖတ္ျပီးေလ့လာေနတယ္

http://alinkarnya.blogspot.com/

sHa92

sHa92
Founder



Founder
က်ေနာ္ ေလာေလာဆယ္မွာေတာ့ တၿခားကိစၥေတြနဲ႔ လုပ္ပန္းေနရတဲ့ အတြက္ Tutorial ကို ဆက္မေရးၿဖစ္ေသးပါဘူး။
အကယ္လုိ႔ဆက္လက္ေလ့လာခ်င္တယ္ဆုိရင္ေတာ့ က်ေနာ္ဆက္မေရးခင္ေလးမွာ ေအာက္က ဆုိဒ္ကို သြားၾကည့္ေလ့လာထားႏုိင္ပါတယ္။
ေတာ္ေတာ္စံုၿပီးေတာ္ေတာ္ေကာင္းတယ္ဗ်။
က်ေနာ္လည္း ဒီေန႔မွ ကိုသာဒင္ ေပးလို႔ရလာတာ။
Code:
http://commandwindows.com/index.html

http://www.myanmaritresource.info

ogre

ogre
Moderator



Moderator
အားရင္ဆက္ေရးေပးပါ $ƴǩǾ @ thank

http://www.myanmarhelper.co.cc

mrzoelay

mrzoelay
MITR Reader



MITR Reader
pdf လုပ္ၿပီးတင္ေပးမယ္.လို႔ေျပာထားတာျဖစ္ႏိုင္ရင္ ျမန္ျမန္ေလးတင္ေပးပါလား .. အိမ္မွာဖတ္ျခင္လို႔ပါ.. ျဖစ္နုိင္ရင္ တင္ေပးပါဗ်ာ၊

သရဲ

သရဲ
MITR Reader



MITR Reader
bat program ေရးနည္းေတြ လုိက္ၾကည့္ေနတာ..ဒီပုိ႔စ္က ေတာ္ေတာ္စုံတာပဲ....အရမ္းေကာင္းတယ္ဗ်ာ

sHa92

sHa92
Founder



Founder
mrzoelay wrote:pdf လုပ္ၿပီးတင္ေပးမယ္.လို႔ေျပာထားတာျဖစ္ႏိုင္ရင္ ျမန္ျမန္ေလးတင္ေပးပါလား .. အိမ္မွာဖတ္ျခင္လို႔ပါ.. ျဖစ္နုိင္ရင္ တင္ေပးပါဗ်ာ၊

က်ေနာ္ အခုတေလာ ပိုစ့္အသစ္ မေရးႏိုင္ေသးလို႔ပါ။
ကို ဘီလူး ဆီမွာေတာ့ PDF လုပ္ထားၿပီးသားရိွႏိုင္တယ္ဗ်။ က်ေနာ္ေမးၾကည့္ၿပီး တင္ေပးပါမယ္။
ေစာင့္ေနရတဲ့အတြက္ ေတာင္းပန္ပါတယ္ေနာ့္။

http://www.myanmaritresource.info

mars

mars
Moderator



Moderator
$ƴǩǾ wrote:ကို ဘီလူး ဆီမွာေတာ့ PDF လုပ္ထားၿပီးသားရိွႏိုင္တယ္ဗ်။ က်ေနာ္ေမးၾကည့္ၿပီး တင္ေပးပါမယ္။
ေစာင့္ေနရတဲ့အတြက္ ေတာင္းပန္ပါတယ္ေနာ့္။
PDF ကို တင္ေပးရင္ ဒီဆိုက္လိပ္စာရယ္ ေရးသူနာမည္ရယ္ပါ ထည့္ၿပီး ebook အျဖစ္ဖန္တီးေပးပါ.... ၿပီးေတာ့ ဒီစာအုပ္ကိုပိုၿပီးျပည့္စံုေအာင္ ဒီမွာ၀င္ေရးေပးေနတဲ့ ကုဒ္ေတြကိုပါ ေရးသူနာမည္ေတြနဲ႔ထည့္ၿပီး ျပဳစုေပးပါလို႔ ေတာင္းဆိုတာပါ... ဒါမွ ေနာက္ေ၀မွ်မယ့္လူေတြက ဒီစာအုပ္ကို ဘယ္ကေနဘယ္လိုစလဲဆိုတာကို သိမွာျဖစ္ပါတယ္... က်ေနာ္က အၾကံေပးရံုသာျဖစ္ပါတယ္... မွားသြားရင္ခြင့္လႊတ္ပါ... ဒီဆိုက္အမွတ္အသားနဲ႔ စာအုပ္တစ္အုပ္ျဖစ္ေျမာက္ေအာင္ပါ.... ေနာက္ၿပီး က်ေနာ္မသိလို႔ပဲလားမသိဘူး.. ဒီလို Bat အေၾကာင္းကို စာအုပ္ထြက္တာမေတြ႕ဖူးေသးပါဘူး... က်ေနာ့္အေနနဲ႔လညး္ ebook လုိခ်င္ရင္ ဒီကတင္ထားတာေတြကို ျပန္ေျပာင္းလုိက္ရင္ရပါတယ္... ဒါေပမယ့္ အထက္ကေျပာသလို ဒီဆိုက္တံဆိပ္နာမည္ေလးနဲ႔ လိုခ်င္တာပါ... ေက်းဇူးတင္ပါတယ္...

http://sidnaing.co.cc/

sHa92

sHa92
Founder



Founder
mars wrote:
$ƴǩǾ wrote:ကို ဘီလူး ဆီမွာေတာ့ PDF လုပ္ထားၿပီးသားရိွႏိုင္တယ္ဗ်။ က်ေနာ္ေမးၾကည့္ၿပီး တင္ေပးပါမယ္။
ေစာင့္ေနရတဲ့အတြက္ ေတာင္းပန္ပါတယ္ေနာ့္။
PDF ကို တင္ေပးရင္ ဒီဆိုက္လိပ္စာရယ္ ေရးသူနာမည္ရယ္ပါ ထည့္ၿပီး ebook အျဖစ္ဖန္တီးေပးပါ.... ၿပီးေတာ့ ဒီစာအုပ္ကိုပိုၿပီးျပည့္စံုေအာင္ ဒီမွာ၀င္ေရးေပးေနတဲ့ ကုဒ္ေတြကိုပါ ေရးသူနာမည္ေတြနဲ႔ထည့္ၿပီး ျပဳစုေပးပါလို႔ ေတာင္းဆိုတာပါ... ဒါမွ ေနာက္ေ၀မွ်မယ့္လူေတြက ဒီစာအုပ္ကို ဘယ္ကေနဘယ္လိုစလဲဆိုတာကို သိမွာျဖစ္ပါတယ္... က်ေနာ္က အၾကံေပးရံုသာျဖစ္ပါတယ္... မွားသြားရင္ခြင့္လႊတ္ပါ... ဒီဆိုက္အမွတ္အသားနဲ႔ စာအုပ္တစ္အုပ္ျဖစ္ေျမာက္ေအာင္ပါ.... ေနာက္ၿပီး က်ေနာ္မသိလို႔ပဲလားမသိဘူး.. ဒီလို Bat အေၾကာင္းကို စာအုပ္ထြက္တာမေတြ႕ဖူးေသးပါဘူး... က်ေနာ့္အေနနဲ႔လညး္ ebook လုိခ်င္ရင္ ဒီကတင္ထားတာေတြကို ျပန္ေျပာင္းလုိက္ရင္ရပါတယ္... ဒါေပမယ့္ အထက္ကေျပာသလို ဒီဆိုက္တံဆိပ္နာမည္ေလးနဲ႔ လိုခ်င္တာပါ... ေက်းဇူးတင္ပါတယ္...

အခုလို အၾကံေပးတာ တကယ္ကို ေက်းဇူးတင္ပါတယ္။
က်ေနာ္လည္း ဒီေကာင္ကို ေသခ်ာ အစအဆုံ ၿပန္ၿဖည့္ေရးၿပီးရင္ စာအုပ္အေနနဲ႔ လုပ္လိုက္ပါမယ္။
ဖိုရမ္ တံဆိပ္လည္း ကပ္ေပးလိုက္ပါမယ္။
တစ္ပတ္အတြင္း အၿပီးၿပန္ေရးလုိက္ဦးမယ္။ Smile

http://www.myanmaritresource.info

Guest

Anonymous
Guest
အင္း

ငါလည္းအဲဒါေျပာမလို႔။ ငါတုိ႔ဖိုရမ္နာမည္နဲ႔ ebooks ထုတ္မလို႔။ ခက္တာက မင္းရဲ႔ ေျပာင္ေခ်ာင္ေခ်ာင္ စကားလံုးေတြကို ျဖဳတ္ျပီး စကားလံုးတည္တည္နဲ႔ ရွင္းေအာင္ေရးျပီးမွပဲ တင္။

ေနာက္ျပီး ကိုယ္ဘယ္လိုေရးမယ္ဆုိတာကိုေရာ ေသခ်ာ structure ခ်ျပီးမွေရးပါ။ မဟုတ္ရင္ နာမည္ပ်က္ကိန္းျမင္လို႔။ အခ်ိန္ျမန္စရာမလိုဘူး။ အေကာင္းဆံုးကေတာ႔ တစ္ေနရာရာမွာ မင္းလ်ာထားတာေတြကို ျပန္တင္ပါ။ ျပီးမွ အားလံုး editing လုပ္ျပီး ေသခ်ာစီစဥ္တာေပါ႔။

sHa92

sHa92
Founder



Founder
ေအးပါဟ။ Edit လုပ္မွ ၿပန္တင္လို႔ၿဖစ္မွာေပါ့။ Smile

http://www.myanmaritresource.info

ⓃⓖⒶ ⓢⒶ ⓛⓊ

ⓃⓖⒶ ⓢⒶ ⓛⓊ
MITR Beginner



MITR Beginner
$ƴǩǾ wrote:ေအးပါဟ။ Edit လုပ္မွ ၿပန္တင္လို႔ၿဖစ္မွာေပါ့။ Smile

ၾကိဳက္ပီဗ်ိဳ ့.. ခုေလာေလာဆယ္ေတာ့ ဘက္ခ်္ အေၾကာင္းေလ့လာေနတာ ဟိဟိ အီးဘြတ္ ဆိုလည္း ေဒါင္းမွာပဲ ..
အားေပးေနတယ္ေနာ္ တိတ္တိတ္ကေလး [You must be registered and logged in to see this image.]
အိုင္တီ ငတတ္ၿပား

mars

mars
Moderator



Moderator
$ƴǩǾ wrote:ေအးပါဟ။ Edit လုပ္မွ ၿပန္တင္လို႔ၿဖစ္မွာေပါ့။ Smile
ဒါေလးကို ျပစ္ထားတာၾကာၿပီေနာ္... လူဆိုး .... :kiss

http://sidnaing.co.cc/

sHa92

sHa92
Founder



Founder
ဟင့္။ တယ္လညး္ ေမာင္းတဲ့လူ။ ေတာ္ေတာ္ဆုိးတယ္။ Razz Razz
Database ဆုိလည္း ေရးခိုင္းလုိက္ ၊ ဒါလည္း ေရးခိုင္းလိုက္နဲ႔။

တားတားလည္း Naruto လို ခါေကဘူးရိွ သံုးရေတာ့မယ္။ Razz

http://www.myanmaritresource.info

mars

mars
Moderator



Moderator
$ƴǩǾ wrote:ဟင့္။ တယ္လညး္ ေမာင္းတဲ့လူ။ ေတာ္ေတာ္ဆုိးတယ္။ Razz Razz
Database ဆုိလည္း ေရးခိုင္းလုိက္ ၊ ဒါလည္း ေရးခိုင္းလိုက္နဲ႔။
ဟီး ... :kiss ဒါက အကငး္ပဲရွိေသးတယ္... ေနာက္ဆို ဒီထက္ လာဦးမွာ... အခုေလာေလာဆယ္ေတာ့ ကိုျမိတ္ တစ္ေယာက္ရယ္၊ Attacker ရယ္၊ Alt.332 (အေလာေတာ္ မဟုတ္ေတာ့ပါ) ကို အရင္ေမာင္းဖို႔လုပ္လိုက္ဦးမယ္... :dance ဒါေလးက ၾကံဳတိုင္းေလး ၀င္ေမႊလိုက္တာ.. :exercise
Code:
တားတားလည္း Naruto လို ခါေကဘူးရိွ သံုးရေတာ့မယ္။ :P
အဲဒါဘာလဲဟင္ ... :doh :doh တားတားနားလည္ေတာ့၀ူး.... :screaming

http://sidnaing.co.cc/

alt.332

alt.332
Administrator



Administrator
IT သမားျဖစ္ေနၿပီးေတာ့ Copy Paste လုပ္ရမယ္ေျပာတာမဟုတ္ဘူး ဘယ့္ႏွယ္ Clone jutsu ကိုဆြဲထည့္ေနရတာလဲ $ƴǩǾ ,

ကို mars ေရ ကၽြန္ေတာ္တို႔ကို မေမာင္းပါနဲ႔ဦး အခု Dreamwaver အတြက္ လံုးပန္းေနလို႔ပါ Very Happy ဘာကိုလံုးပန္းေနသလဲသိခ်င္ရင္ေတာ့ PM ေလးပို႔လိုက္ပါခညာ

http://www.myanmaritresource.info

sHa92

sHa92
Founder



Founder
αℓт.332 wrote:IT သမားျဖစ္ေနၿပီးေတာ့ Copy Paste လုပ္ရမယ္ေျပာတာမဟုတ္ဘူး ဘယ့္ႏွယ္ Clone jutsu ကိုဆြဲထည့္ေနရတာလဲ $ƴǩǾ ,
ကို mars ။ ကြ်န္ေနာ့္ ညီေတာ္ ရွင္းၿပၿပီးၿပီေနာ္။ ဟီး

ဒီလိုဘဲ မန္ဂါ ဖတ္ရင္းနဲ႔ Reply ၿပန္လိုက္ေတာ့ အဲဒီ့ကဟာေလးေတြပါသြားတာ။ ဒါေတာင္ ရာစင္းဂန္း မထည့္ေသးဘူးေနာ္။ Razz

http://www.myanmaritresource.info

kyawzwathant

kyawzwathant
MITR Reader



MITR Reader
တူေနတာေတြေပါင္း၊ မွားေနတာေလးေတြ ျပင္ေပးပီး PDF File ေလးထုတ္ေပးပါလားဗ်ာ။ အားလံုးေကာင္းပါတယ္။

alt.332

alt.332
Administrator



Administrator
Member ေတြက်န္တဲ့သူေတြ Force ေပးလိုက္ပါဦးဗ်ာ...ကၽြန္ေတာ္တို႔ရဲ႕ မင္၂ ႀကီးအပ်င္းတစ္ေနပံုရပါတယ္ Razz

http://www.myanmaritresource.info

mars

mars
Moderator



Moderator
$ƴǩǾ wrote:ဟင့္။ တယ္လညး္ ေမာင္းတဲ့လူ။ ေတာ္ေတာ္ဆုိးတယ္။ Razz Razz
Database ဆုိလည္း ေရးခိုင္းလုိက္ ၊ ဒါလည္း ေရးခိုင္းလိုက္နဲ႔။
တားတားေပးလြန္းလို႔ တူကဒီလိုျပန္ေျပာတယ္.... :cry အဲဒါ တျခား မန္ဘာေတြပဲေျပာေတာ့ေနာ္..တားတား ဘာမွ၀င္ေျပာ၀ူး... :lipsrsealed
ျမန္ျမန္လုပ္ပါလို႔လည္း ေျပာ၀ူး.... :lipsrsealed
ေနာက္တစ္ပတ္အတြင္း ျဖစ္ႏိုင္ရင္ လိုခ်င္တယ္လို႔လည္းေျပာ၀ူး.. :lipsrsealed
ဒါကို ebook စၿပီး တားတားလုပ္ဖို႔ေျပာေတာ့ တစ္ပတ္အတြင္းလုပ္ေပးမယ္လို႔ ဘူေလးေျပာတာလဲသိ၀ူူးေနာ္... လို႔လည္း သားသားေမး၀ူး... :lipsrsealed
အခုလိုပစ္ထားတာေတာ့ ေကာင္း၀ူး...လို႔လညး္ တားတားေျပာ၀ူး... :lipsrsealed
ေတြ႕လား အခုတူမ်ားေတြေတာင္ ေျပာတုန္ဘီ ... :shooting အဲလိုေျပာတုန္လို႔လဲ တားတားက ၀င္ၿပီး force ေပးပါဆိုတာကို ၀င္ၿပီး ေပးဖို႔ လုပ္၀ူးေနာ္... :attention
အကို ဘာမွ ၀င္ၿပီး ညီစြမ္းကို force မေပးဘူးေနာ္.... လူဆိုးလို႔ေျပာနဲ႔ေတာ့....

ေအာ္ဒါနဲ႔ ေမ့လို႔ အကိုေျပာထားတဲ့ ဟိုေလ Database ကိစၥေလးကိုလည္း ျမန္ျမန္ေလးလုပ္ေပးပါလို႔ မေျပာဘူးေနာ္... :lipsrsealed Razz Razz

http://sidnaing.co.cc/

Sponsored content


View previous topic View next topic Back to top  Message [Page 1 of 3]

Go to page : 1, 2, 3  Next

Permissions in this forum:
You cannot reply to topics in this forum

 

Create a forum on Forumotion | ©phpBB | Free forum support | Report an abuse | Forumotion.com