1. Trang chủ
  2. » Công Nghệ Thông Tin

Ngôn ngữ lập trình dành cho mọi người docx

27 756 1

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 27
Dung lượng 0,93 MB

Nội dung

{SPACE} SPACE phím dài nh t bàn phím ýấ{BACKSPACE} or {BS} BACKSPACE nút F12ứ {LWIN} phím Windows hình lá c ý bên tráiờ{RWIN} phím Windows hình lá c ý bên ph iờ ả {CAPSLOCK off} CAPSLOC

Trang 1

NGÔN NG L P TRÌNH DÀNH CHO M I NGỮ Ậ Ọ ƯỜI !

<Nhi u khi code c a tui có m t s l nh “m i l ”, nh ng r t hay ! ^^ >ề ủ ộ ố ệ ớ ạ ư ấ

-designed by Lý Th Minh – nick : autoboy195 – Y!m : unluckystar_195 ế borned : 20-2-1995 ^^!

-Time : 10:25PM 18.2.10 (( tut có 32 trang)

Tui s c trình bày 1 cách d hi u nh t ! ẽ ố ễ ể ấ

<tui t s u t m và t biên t di n ^^ - có ch nào ko h u xin th l i!> ự ư ầ ự ự ễ ỗ ỉ ứ ỗ

Menu nhanh

[==================== Menu ============================]

M t vài thao tác v i notepadộ ớ

Cho phép user t t formắ

Trang 2

2 M t ch ộ ươ ng trình đ n gi n ơ ả

Đ hi n th Ti ng Vi t có d u trong AutoIT, b n hãy làm nh sau :ể ể ị ế ệ ấ ạ ư

File > Encoding > UTF – 8 with BOM ho c UCS-2 Big Endianặ

-• Gõ vào dòng sau trong khu v c 3 :ự

Msgbox (0,"Thông báo","Hi n th ti ng vi t 100% ^^")ể ị ế ệ

Save nó l i, bây gi n F5 đ ch y, 1 chạ ờ ấ ể ạ ương trình nh c a b n đã hình thành !ỏ ủ ạ

Tuy t v i, chệ ờ ương trình hi n th Unicode r t chu n, không b l i nh vb6 ^^.ể ị ấ ẩ ị ỗ ư

• Chuy n thành File exe :ể

Có r t nhi u cách, nh ng có m t cách r t đ n gi n là truy c p đ n th m c ch a file *.au3 , nháy ph i vào file này vàấ ề ư ộ ấ ơ ả ậ ế ư ụ ứ ả

ch n Complite Script N u ko có l i gì thì l p t c b n đã có 1 file *.exe hoàn ch nh rùi ! Ti n l i h n là ch có 1 file duyọ ế ỗ ậ ứ ạ ỉ ệ ợ ơ ỉ

th o ả

4 – Thanh tr ng thái ạ

Trang 3

Msgbox ([ki u thông báo 0~6],“[Tiêu đ ]”,“[Text]”)ể ề

WinWaitActive ( "Untitled - Notepad") ; không dc đ i tiêu đ !ổ ề

Xem thêm (r t quan tr ng !)ấ ọ

Có nghĩa là ch c a s notepadờ ử ổ

Gõ ti p dòng này vào :ế

Send("This is some text.")

Có nghĩa là : G i dòng ch trên cho notepad đang m !ử ữ ở

Và đây là dòng cu i cùngố

WinClose ( "Untitled - Notepad")

Dùng đ đóng Notepad.ể

T ng h p, ta có code nh sau :ồ ợ ư

run ("notepad") ; ch y notepadạ

WinWaitActive ( "Untitled - Notepad") ;ch notepadờ

Send("This is some text.") ; g i text đ n notepadử ế

WinClose ( "Untitled - Notepad") ; đóng notepad

; Thao tác nhanh nh đi n x t v y ^^ư ệ ẹ ậ

; là chú thích !

Bây gi n F5, b n s th y các công vi c x y ra l n lờ ấ ạ ẽ ấ ệ ả ầ ượt :

- M notepadở

- M notepad có tiêu đ là Utitled – notepadở ể

- Gõ dòng ch This is some text vào notepadữ

- Thoát notepad, hi n ra b ng tùy ch n thoátệ ả ọ

(Ch p, cái ch “Thí í some text” là do tui b t unikey ^^)ẹ ỗ ậ

Trang 4

B n m chạ ở ương trình đó lên trong windows, ví d notepad :ụ

Chép dòng ch có khoanh tròn tiêu đ - ữ ề vào đâu đó Dòng ch đó s dùng cho v trí này trong AutoIt:ữ ẽ ị

-N u tiêu đ dài ho c b n “lế ề ặ ạ ười” chép ^^, hãy dùng công c Windows Info có s n c a AutoItụ ẵ ủ

Bước 1 : ch y notepadạ

Bước 2 : Ch y windows infoạ

☻ K t thúc :ế

• Câu l nh đ ch y chệ ể ạ ương trình : run (“[tên chương trình]”)

* tên chương trình ho c đặ ường d n chẫ ương trình

• Câu l nh đ ch chệ ể ờ ương trình đó : WinWaitActive (“[tiêu đ ]”)ề

• Câu l nh đ g i text đ n chệ ể ử ế ương trình đó : send (“[text mu n g i]”)ố ử

n u mu n g i kí t “#”, gõ l nh sau :ế ố ử ự ệ

Send (“# d u thăng”,1) -ấ  cho flag là 1

• Câu l nh đ đóng chệ ể ương trình đó : winclose (“[tiêu đ ]”)ề

[H c l p trình thì không th không n m v ng căn b n, mà mu n n m v ng căn b n thìọ ậ ể ắ ữ ả ố ắ ữ ả

ph i n m v ng lí thuy t đã, r i ki n th c s đả ắ ữ ế ồ ế ứ ẽ ược c ng c qua th c hành, h c t t ,ủ ố ự ọ ừ ừ

s vào ^^]ẽ

Bài 3 : Khai báo

- Tui s đi nhanh ph n này, nh ng ko b sót các ph n quan tr ng nh t ! ẽ ầ ư ỏ ầ ọ ấ

• Khai báo bi n ế : Các bi n đế ược khai báo và t o ra v i các t khóaạ ớ ừ Dim, local và global: (ph m vi s d ng : global >ạ ử ụlocal > dim)

Dim $var1

Ho c b n cũng có th khai báo nhi u bi n cùng m t lúc: ặ ạ ể ề ế ộ

Dim $var1, $myvariable

Trang 5

B n cũng có th ch đ nh m t bi n màạ ể ỉ ị ộ ế không c n ầ khai báo (nh ngư Tui khuy n kíchế khai báo trước)

$Var1 = "abc"

• Khai báo h ng ằ (constants)

Constants được công b và t o ra b ng cách s d ng Const ố ạ ằ ử ụ t khóa nh : ừ ư

Const $const1 = 1, $const2 = 12

Constants có th để ược công b và s d ng Enumố ử ụ nh sau: ư

Enum $const1 = 1, $const2, $const3 ; 1, 2, 3

Enum STEP 2 $incr0, $incr2, $incr4 ; 0, 2, 4

Enum STEP *2 $mult1, $mult2, $mult4 ; 1, 2, 4

Các k t qu này trong $MyChar có ch a ch "T" ế ả ứ ữ

Các ch m c s cũng có th đỉ ụ ố ể ược thay th b i m t bi n ho c m t bi u, do đó, b n có th xây d ng ph c t p cách đ chế ở ộ ế ặ ộ ể ạ ể ự ứ ạ ể ỉ

đ nh ho c truy c p vào m t y u t trong m ng đó ị ặ ậ ộ ế ố ả

Arrays cũng có th để ược nhi u chi u, khi b n s d ng nhi u lo t các ch m c s , nh : ề ề ạ ử ụ ề ạ ỉ ụ ố ư

Trang 6

- Khai báo bi n : ế Dim $tên_bi n_1,$tên_bi n_2ế ế

- Khai báo h ng : ằ Const $tên_bi n_1 = [giá tr c a h ng]ế ị ủ ằ

Ví d : Const $bien1 = 1, $bien2 = 2ụ

- Khai báo m ng Array : ả

+ m t chi u : ộ ề $tên_m ng[s th t m ng]= [giá tr m ng]ả ố ứ ự ả ị ả

And Logic và: đúng n u 2 dk đúng, sai n u 1 trong 2 saiế ế

Or Logic ho c : đúng n u 1 trong 2 đúng, sai n u c hai sai ặ ế ế ả

Not Logic Không : vd : Không 1 (sai)

Trang 7

Th c ra trong AutoIt còn có c u trúc SELECT … CASE n a, nh ng c u trúc này đòi h i ph i vi t đi vi t l i nhi u l nự ấ ữ ư ấ ỏ ả ế ế ạ ề ầ

bi n, nên Tui dùng c u trúc này, ng n g n h n r t nhi u.ế ấ ắ ọ ơ ấ ề

Ví d :ụ

dim $var ; Khai báo bi n varế

$var = inputbox ("Nh p","Nh p 1 s ") ậ ậ ố ; Gán var = s b n ch nố ạ ọ

Trang 8

msgbox (0,"Thông báo",$a)

Cùng 1 code, cùng 1 ch c năng là hi n th thông báo, nh ng code 1 ch y đứ ể ị ư ạ ược, còn code 2 ko ch y dc !ạ

K t lu n : ta có công th c t ng quát sau :ế ậ ứ ổ

' văn b n bình thả ường “ văn b n ch a d u ngo c kép” ả ứ ấ ặ '

Ví d mu n hi n th câu : R ng là “lá ph i xanh” c a trái đ tụ ố ể ị ừ ổ ủ ấ

MsgBox(0, "Ví d ", ụ ' R ng là "lá ph i xanh" c a trái đ t ừ ổ ủ ấ ')

Hjz, thui thì c vi t c u trúc kia v y (đ n gi n thôi)ứ ế ấ ậ ơ ả

• C u trúc Select … caseấ

SelectCase <đi u ki n 1>ề ệ <các câu l nh>ệ

Case <đi u ki n 2>ề ệ <các câu l nh>ệ

Case Else <các câu l nh>ệ

Trang 9

$b = "văn b n : ch y microsoft word"ả ạ

msgbox (0,"Tiny Soft","B n hãy gõ các dòng tạ ương ng v i các l nh sau : " & @Crlf & @Crlfứ ớ ệ

& $a & @crlf & $b) ; xu ng dòng … đã h c rùi :Dố ọ

; nh p li uậ ệ

$dl = inputbox ("Enter to here","Nh p l nh đ m chậ ệ ể ở ương trình : ")

if $dl = "text" Then ; câu l nh 1ệ

run ("notepad") ; h t câu l nh 1ế ệ

ElseIf $dl = "văn b n" ả Then ; câu l nh 2ệ

run ("C:\Program Files\Microsoft Office\Office10\WINWORD.exe") ; h t câu l nh 2ế ệElse ; ngượ ạc l i

msgbox (0,"Thông báo tu do'ng sau 2 giay","Không có l nh này !",2)ệ

EndIf ; k t thúcế

Code có th sai n u để ế ường d n (path) c a word ch khác !ẫ ủ ở ỗ

○ Ch y th chạ ử ương trình (F5)

Sau khi n OK, word hi n ra ! ấ ệ

N u gõ linh tinh thì thông báo hi n ra, sau 2s t t t !ế ệ ự ắ

○ Phân tích code

- khai báo 2 bi n (a,b) cho chế ương trình, m i bi n ch a 1 dòng textỗ ế ứ

- khai báo 1 bi n ch a d li u khi nh p vào inputbox (dl)ế ứ ữ ệ ậ

- hi n thông báoệ

- hi n input boxệ

- x lí l nhử ệ

+ N u nh p “text” thì ch y notepadế ậ ạ

Trang 10

3 l nh run ("đệ ường d n chẫ ương trình")

4 Timeout : th i gian đ thoát chờ ể ương trình

ví d : msgbox (0,"","",2) tính b ng giâyụ ằ

H t bài ^^ế

Bài 6 : C u trúc l p ấ ặ

Phù !! Sau khi b n đã hi u h t bài h c t 1 đ n 5, hãy ngh gi i lao 30’ rùi h c típ nhé ạ ể ế ọ ừ ế ỉ ả ọ

• C u trúc While … Wendấ (gi ng ố while … do trog pascal í mà )

Wend ; k t thúc vòng l p n u đi u ki n saiế ặ ế ề ệ

<l nh th c hi n khi đi u ki n sai>ệ ự ệ ề ệ

Wend ; N u i > 10 (t c là sai đi u ki n) thìế ứ ề ệ

Msgbox (0,“Thong bao”,“Vòng l p đã d ng l i vì i > 10”)ặ ừ ạ

n u sai thì thoát kh i vòng l p ! ế ỏ ặ While

Wend

Trang 11

- Nên l nh msgbox đệ ược th c hi n và bi n i dc tăng lên 1 đ n vự ệ ế ơ ị

- Tăng đ n 1 m c nào đ y, bi n i > 10 thì l nh sau wend dc th c hi n và k t thúc vòng l p.ế ứ ấ ế ệ ự ệ ế ặ

C u trúc này h i khó, nh ng b n nào đã n m v ng c u trúc while … do trog pascal thì th y chúng ko đ n n i khó !ấ ơ ư ạ ắ ữ ấ ấ ế ỗHãy test code trên đ hi u thêm ể ể  !

Và : m t ng d ng r t hay c a c u trúc trên, đó là cho phép user t t chộ ứ ụ ấ ủ ấ ắ ương trình b ng cách n nút “X” ( b n c thằ ấ ạ ứ ử làm 1 GUI r i không copy code sau vào form xem, đ b n t t dc chồ ố ạ ắ ương trình khi nh n nút “X” đ y :D)ấ ấ

Hãy copy code trên vào form khi b n mu n t t form b ng nút “X” !ạ ố ắ ằ

Trong đó : 1 t c là enable, 0 t c là disableứ ứ

Msgbox (0,“Thong bao”, “An OK de thoat !”)

• C u trúc Do … Untilấ (gi ng trong pascal)ố

Cú pháp :

== =========================================

Do <các câu l nh>ệ

Until <đi u ki n>ề ệ

== ===============================================

Trang 12

(*) ng d ng r t hay trong “Auto” – đó là :Ứ ụ ấ

◘ T đ ng Click chu t trái (click chu t ph i thì thay left >> right)ự ộ ộ ộ ả

; Vòng l p đ auto Click ặ ể

Do

MouseClick(“left”)

Until 0 ; Đ n khi chế ương trình không ch y n a thì d ngạ ữ ừ

; Th c ch t là l p thao tác Click, hay nói cách khác là ng u nhiên t o ra thao tác đúp chu tự ấ ặ ẫ ạ ộ

• hjhj, ai thích auto “b m máu” thì c dùng t nhiên ^^, tui hok ch i game m y, nh ng h c auto thì ph i ch i rùi ơ ứ ự ơ ấ ư ọ ả ơ

M i xem qua ph n m m AutoClick v1.0 – phiên b n đ u tay c a tui ờ ầ ề ả ầ ủ , trong bài GUI s s d ng giao di n đ đi uẽ ử ụ ệ ể ề khi n form, t c là có label, có form, có button, có combo box … v.vv , giúp cho ph n m m tr nên chuyên nghi p h nể ứ ầ ề ở ệ ơ

CODE : AutoClick phiên b n 1.0 c a autoboy195 ^^ả ủ

#cs

-;~ Chương trình : T đ ng Click chu t đ n gi nự ộ ộ ơ ả

;~ Thi t k : Lý Th Minh (20.2.1995) - Thanh Lế ế ế ương - Yên Bái

;~ Autoit v3.0.0.0

#ce

-; - Chương trình chính

-Global $time,$time_final ; ch a th i gianứ ờ

msgbox (0,"Auto Click - autoboy195","Hãy n OK trấ ước tiên, rùi n F7 đ b t đ u - n F8 đ d ng")Ấ ể ắ ầ Ấ ể ừ

$time = inputbox ("AutoTime to exit program - autoboy195","Gõ vào th i gian c a b n (tính b ng giây) mu nờ ủ ạ ằ ố

Func auto() ; không có bi n nào trong hàm autoế

Do ; L p l i thao tác Click -> Nháy đúp ^^ặ ạ

MouseClick("left") ; Click (nhìn là h u, ko c n gi i thich gì thêm)ỉ ầ ả

Until 0 ; L p l i thao tác Click -> Nháy đúp ^^ặ ạ

msgbox (0,"AutoClick - autoboy195"," n OK đ thoát ! c m n b n đã s d ng chẤ ể ả ơ ạ ử ụ ương trình ^^")

Exit ; thoát nhanh chương trình

Ng ượ c hoàn toàn so v i ớ While … Do , b n c hình dung ạ ứ

s đ này trong đ u là đ ơ ồ ầ ượ c ! DO

Until

Trang 13

Hjz, ngoài ra còn 2 nhi u c u trúc (For…In và With) n a nh ng tác gi “lề ấ ữ ư ả ười” không h c ọ , nh ng cái y tui cònữ ấ

ch a h u h t ư ỉ ế , sau này đ c p đ n thì h c, nh ng c u trúc c b n đã d y h t rùi ^^ ề ậ ế ọ ữ ấ ơ ả ạ ế Bây gi s chuy n quaờ ẽ ể

m t ph n không kém ph n quan tr ng, đó là …ộ ầ ầ ọ

M i xem bài 7 sau đó xem l i code trên !ờ ạ

Bài 7 : Function – Hàm – ch ươ ng trình con

Hì , Tui đ ngh b n nên ngh gi i lao 30 phút trề ị ạ ỉ ả ước khi h c ọ

Trang 14

-; Script Start - Add your code below here

;Global $a,$b thêm ho c b cũng đặ ỏ ược

msgbox (0,"vi du"," n OK, sau đó Gõ ch s đ ch y chẤ ữ ể ạ ương trình, gõ ch t đ thoát chữ ể ươ ngtrình") ; hi n thông báoệ

func h1($a) ; == hàm 1 ==

$a = "Ví d vê func - đi u khi n b ng phím nóng"ụ ề ể ằ

msgbox (0,"Thong bao - chuong trinh tu tat sau 8 giay",$a)

EndFunc ; == k t thúc hàm 1 ==ế

Func h2($b) ; == hàm 2 ==

$b = "C m n đã s d ng !"ả ơ ử ụ

msgbox (0,"Thong bao - code by autoboy195",$b)

Exit ; l nh đ t t nhanh chệ ể ắ ương trình

EndFunc ;== h t hàm 2 ==ế

HotKeySet("{s}","h1") ; phím nóng : n u user gõ s thì hàm 1 đế ược g i lênọ

HotKeySet("{t}","h2") ; phím nóng : n u user gõ t thì hàm 2 đế ược g i lênọ

Trang 15

Sleep(8000) ; N u không g i hàm 2 thì sau 8 giây chế ọ ương trình t t t (1000 = 1s)ự ắ

Copy vào forrm đi đã, phân tích sau ! không thì m t l m đ y ^^ ệ ắ ấ

* Code trên ch y không b l i ! Tui đã test rùi ! N u b n ko ch y dc thì hãy nh chuyên gia v AutoIt c a b n (Vìạ ị ỗ ế ạ ạ ờ ề ủ ạchính tác gi cũng ko rõ m y, vì tác gi ch vi t theo “s hi u” c a mình thui ^^, nh ng nh Encoding là …BOM…ả ấ ả ỉ ế ự ể ủ ư ớnhá (xem bài 1) )

• Ch y chạ ương trình (F5)

n OK N u b n gõ ch s (ch “s”) , thông báo sau hi n ra

* L u ý : thông báo đ u tiên, khi b n n OK, t c là trong 8 giây đó, dù b n không th y form nh ng v n đang ch yư Ở ầ ạ ấ ứ ạ ấ ư ẫ ạ

ng m ! Sau 8 giây, n u b n không n nút gì ho c n ngoài 2 nút trên thì m c đ nh chầ ế ạ ấ ặ ấ ặ ị ương trình s t t ! (vì code cóẽ ắ

l nh ệ Sleep(8000) )< ch y ng m chính là cách th c chung c a virus !! ^^>ạ ầ ứ ủ

B NG KEYS DÙNG CHO L NH HotKeySet(“{}”) Ả Ệ

key (flag=0) key đc n trên bàn phím ấ

Trang 16

{SPACE} SPACE (phím dài nh t bàn phím ý)ấ

{BACKSPACE} or {BS} BACKSPACE (nút <- trên nút enter ý)

{RIGHT} Right arrow (phím mũi tên ph i)ả

{ESCAPE} or {ESC} ESCAPE (phím Esc phía trên cùng bên trái)

{F1} - {F12} các phím ch c năng F1 -> F12ứ

{LWIN} phím Windows (hình lá c ý) bên tráiờ{RWIN} phím Windows (hình lá c ý) bên ph iờ ả

{CAPSLOCK off} CAPSLOCK (on/off/toggle)

{SCROLLLOCK toggle} SCROLLLOCK (on/off/toggle)

Trang 17

{RSHIFT} Right Shift key

{ALTDOWN} Holds the ALT key down until {ALTUP} is sent

{SHIFTDOWN} Holds the SHIFT key down until {SHIFTUP} is sent

{CTRLDOWN} Holds the CTRL key down until {CTRLUP} is sent

{LWINDOWN} Holds the left Windows key down until {LWINUP} is sent{RWINDOWN} Holds the right Windows key down until {RWINUP} is sent{ASC nnnn} Send the ALT+nnnn key combination

{BROWSER_BACK} 2000/XP Only: Select the browser "back" button

{BROWSER_FORWARD} 2000/XP Only: Select the browser "forward" button

{BROWSER_REFRESH} 2000/XP Only: Select the browser "refresh" button

{BROWSER_STOP} 2000/XP Only: Select the browser "stop" button

{BROWSER_SEARCH} 2000/XP Only: Select the browser "search" button

{BROWSER_FAVORITES} 2000/XP Only: Select the browser "favorites" button

{BROWSER_HOME} 2000/XP Only: Launch the browser and go to the home page{VOLUME_MUTE} 2000/XP Only: Mute the volume

{VOLUME_DOWN} 2000/XP Only: Reduce the volume

{VOLUME_UP} 2000/XP Only: Increase the volume

{MEDIA_NEXT} 2000/XP Only: Select next track in media player

{MEDIA_PREV} 2000/XP Only: Select previous track in media player

{MEDIA_STOP} 2000/XP Only: Stop media player

{MEDIA_PLAY_PAUSE} 2000/XP Only: Play/pause media player

{LAUNCH_MAIL} 2000/XP Only: Launch the email application

{LAUNCH_MEDIA} 2000/XP Only: Launch media player

{LAUNCH_APP1} 2000/XP Only: Launch user app1

{LAUNCH_APP2} 2000/XP Only: Launch user app2

đ n kí t † (gi Alt n 01414 và th Alt ra) ta dùng send( "ASC 01414")ể ấ ự ữ ấ ả

vd Send("{a 4}"); thì n phím a 4 l nấ ầ

Send("+{TAB 4}") ;thì n Alt Tab 4 l nấ ầ

Send("!{F}") ; n Alt + Fấ

Send("^{v}") l; n Ctrl + VẤ

Send("{a down}") ; n phím a xu ng (gi nó dấ ố ữ ở ưới)

Send("{a up}") ; th phím a lên (sau khi đc n xu ng)ả ấ ố

C 1 b ng keys cho b n l a ch n !ả ả ạ ự ọ

- Hàm đ h n th i gian cho chể ẹ ờ ương trình t đ ng thoát (tính b ng miligiây) :ự ộ ằ

Sleep(th i_gian_tính_b ng_miligiayờ ằ )

Công th c đ i : 1000 = 1 giâyứ ổ

- Hàm đ thoát ngay l p t c chể ậ ứ ương trình, hàm sleep s b b qua :ẽ ị ỏ

Exit

Ngày đăng: 09/03/2014, 20:20

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w