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

Bài giảng Autoit pdf

180 411 3

Đ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

Nội dung

Bài giảng Autoit GIỚI THIỆU VỀ AUTOIT AutoIt v3 là một ngôn ngữ lập trình được cung cấp miễn phí, có dạng kịch bản giống như BASIC được thiết kế để tự động hóa các GUI (Graphic User Interface : giao diện người dùng) và các thao tác thường dùng. Nó là sự phối hợp của việc giả lập nhấn phím , di chuyển chuột và thao tác trên cửa sổ/control (control là các đối tượng tương tác được trên cửa sổ, ví dụ như là button - nút bấm) để thực hiện tự động các tác vụ theo cách thức mà các ngôn ngữ khác không thể làm hoặc làm không chuẩn xác. AutoIt có dung lượng rất nhỏ gọn, có thể chạy độc lập trên tất cả các phiên bản của Windows mà không cần các runtime để làm nền. Tuy nhiên, kể từ phiên bản v3.3, AutoIt đã không còn hỗ trợ cho Windows 9x và Win NT 4.0. Ban đầu AutoIt được thiết kế để tự động cấu hình cho hàng ngàn máy PC. Theo thời gian, AutoIt trở thành một ngôn ngữ đầy sức mạnh với sự hỗ trợ các biểu thức phức tạp, hàm do người dùng tự định nghĩa, các vòng lặp và mọi thứ mà một người lập trình kịch bản dày dặn mong đợi. Ở đây là các tính năng chính :  Dễ học vì các cú pháp đơn giản  Giả lập được việc nhấn phím và di chuyển chuột  Thao tác được với các tiến trình và cửa sổ  Tương tác được với các control trên cửa sổ  File mã có thể được biên dịch thành một file thi hành duy nhất  Cho phép tạo GUI - giao diện người dùng  Hỗ trợ COM (Component Object Model)  Hỗ trợ biểu thức thông thường  Gọi một cách có định hướng các DLL mở rộng và các hàm API  Tài liệu chi tiết và cộng đồng rộng hỗ trợ lớn  Tương thích với tất cả phân hệ của Windows  Hỗ trợ Unicode và x64  Làm việc với User Account Control (UAC) trên Vista AutoIt được thiết kế sao cho nhỏ nhất có thể và không cần dùng đến các file DLL mở rộng hoặc Registry để nó có thể an toàn khi chạy trên các Server. Các file script (mã, kịch bản) có thể được biên dịch thành file exe với công cụ Aut2Exe. Sự kết hợp các COM và DLL từ việc gọi AutoItX cho phép bạn thêm các tính năng độc nhất vào các đoạn script hay ngôn ngữ lập trình yêu thích. CẤU TRÚC THƯ MỤC CÀI ĐẶT AUTOIT Các file và thư m ục Miêu t ả (Thư m ục cấp tr ên) AutoIt3.exe Chương tr ình chính c ủa AutoIt đ ể chạy các file script AutoIt3_x64.exe Phiên b ản x64 của AutoIt (nếu có c ài đ ặt). AU3Info.exe AutoIt Window Info Tool – cung c ấp thông tin từ cửa sổ. AU3Info_x64.exe Phiên b ản x64 của AutoIt (nếu có c ài đ ặt). AU3Check.exe Trình ki ểm tra cú pháp . AutoIt.chm File tr ợ giúp, sử dụng AutoIt3.chm và UDFs3.chm Uninstall.exe Trình g ỡ bỏ AutoIt AutoIt v3 Website.url Shortcut đ ể truy cập v ào website : http://www.autoitscript.com/autoit3/ Aut2Exe Icons \ Ch ứa các icon (*.ico) để d ùng cho file au3. Aut2Exe.exe Trình biên d ịch file nguồn th ành file exe Aut2Exe_x64.exe Phiên b ản x64 của AutoIt (nếu có c ài đ ặt). AutoItSC.bin M ẫu có thể thực thi cho m ã đ ã đư ợc bi ên d ịch AutoItSC_x64.bin M ẫu có thể thực thi x64 cho m ã đ ã đư ợc bi ên d ịch. UPX.exe Trình nén UPX đ ể nén kích th ư ớc của file m ã khi d ịch sang file exe Examples GUI \ Các ví d ụ về GUI đ ư ợc viết trong AutoIt. Helpfile \ Ch ứa các file script ví dụ đ ư ợc d ùng trong file help Extras AutoUpdateIt\ Ch ứa một script giúp cho việc c ập nhật phi ên b ản mới của AutoIt3. Editors\ Ch ứa các định nghĩa m àu cú pháp cho vài trình so ạn thảo phổ biến. Exe2Aut\ Ch ứa các công cụ chuyển file exe sang file script nguồn. SQLite \ Ch ứa tiện ích d òng l ệnh SQLite v à file tr ợ giúp v2_to_v3_Converter\ Ch ứa công cụ giúp chuyển đổi cú pháp AutoIt từ v2.64 sang AutoIt v3. Icons Ch ứa icon đ ư ợc d ùng cho file au3 Include Ch ứa các file th ư vi ện với các h àm đư ợc định nghĩa sẵn AutoItX Ch ứa một phi ên b ản DLL của AutoIt v3 để cung c ấp một tập hợp con các tính năng của giao diện ActiveX/COM và DLL. SciTe Ch ứa tr ình biên so ạn văn bản SciTe để viết script Xin nhắc lại là để chạy được các đoạn script của AutoIt, chỉ yêu cầu có file AutoIt3.exe. Nếu bạn biên dịch một file script sang file có thể thực thi thì người dùng khác không cần phải cài đặt AutoIt mà vẫn có thể chạy được file script đã biên dịch. (Ngoại lệ : dưới Windows NT4, file PSAPI.dll thì cần thiết trong đường dẫn hoặc trong thư mục cài đặt AutoIt cho các hàm Process…() làm việc.) VIẾT SCRIPT Trong AutoIt đã được tích hợp sẵn trình soạn thảo SciTe cho phép ta viết và chạy các đoạn script một cách tự động. Tuy nhiên đây là bản rút gọn cho nên đã được lượt bỏ vài tính năng và công cụ bổ sung. Phiên bản đầy đủ các bạn có thể tải về từ http://www.autoitscript.com/autoit3/scite/. Ở đây tôi xin nói thêm vài điểm lưu ý trong việc soạn mã.  Khi viết script trong SciTe, bạn cần phải lưu lại trước khi nhấn phím F5 để chạy. File nguồn có đuôi là au3.  Để viết và hiển thị được tiếng Việt, bạn vào "File > Encoding" sau đó chọn UCS -2 Little Endian hoặc UCS-2 Big Endian.  SciTe sẽ hiển thị các dòng lệnh của bạn với nhiều màu sắc khác nhau, tùy theo thành phần cú pháp. Nếu bạn cảm thấy các màu sắc hiển thị không vừa ý thì có thể sử dụng công cụ SciTeConfig để chỉnh lại. Công cụ này có sắn trong phiên bản full của SciTe hoặc tải riêng lẻ từ www.autoitscript.com.  Nếu bạn không thích dùng SciTe để soạn script thì có thể dùng các công cụ biên soạn miễn phí khác như Crimson Editor (http://www.crimsoneditor.com/) hoặc Source Edit (http://www.sourceedit.com/) nhưng sẽ phải thực hiện cấu hình việc khai báo chương trình chạy file au3 và trình biên dịch.Các file cú pháp được viết sẵn do AutoIt cung cấp có thể dùng cho nhiều trình soạn thảo và chúng được chứa trong trong thư mục Extra ( \AutoIt v3\Extra) BIÊN DỊCH FILE SCRIPT THÀNH FILE EXE Khi biên dịch một file script thành file exe, bạn có thể yên tâm rằng nó sẽ chạy được trên mọi máy tính cài hệ điều hành Windows mà không cần bất cứ một runtime nào để làm nền. Bởi vì tất cả các #include cũng sẽ được nén, mã hóa và kết hợp vào trong một file duy nhất. Nhưng bạn cần phải chắc chắn một điều rằng file script của bạn không có lỗi cú pháp, bởi vì compiler không thực hiện kiểm tra cú pháp khi biên dịch sang file *.exe. Muốn thực hiện việc biên dịch file script, có 3 cách :  Cách 1 : Bạn cần gọi công cụ Aut2Exe. Vào menu "Start > All programs > AutoIt v3 > Compile scritpt to exe" và làm theo hướng dẫn của mẫu form. Error!  Cách 2 : Từ trình soạn thảo SciTe bạn vào Tool > Compile hoặc nhấn Ctrl + F7  Cách 3 : Nhấp phải chuột vào file nguồn (au3) và chọn Compile Script. Error! Ở cách 2 và 3, file thi hành sẽ được tạo ra ngay tại thư mục chứa file nguồn. Ngoài ra còn có thêm một cách biên dịch khác là dùng command promt để gọi aut2exe với các tham số chỉ định. Cách này khá dài dòng và phức tạp nên không đề cập ở đây. CÁC TOÁN TỬ AutoIt hỗ trợ các toán tử gán, tính số học, so sánh, và logic. Toán t ử Miêu t ả = Phép gán. Vd : $var = 5 (gán 5 vào biến $var ) += Tăng. Vd : $var += 2 ( tăng biến $var lên 2 đơn vị, tương đương v ới $var = $var+2) - = Gi ảm. Vd : $var - = 1 (giảm biến $var xuống 1 đơn vị, tương đương $var = $var -1) *= Nhân. /= Chia &= N ối th êm chu ỗi. Vd : $var = "one" , và sau đó $var &= 10 ( $var s ẽ bằng "one10" ) + C ộng hai số. Vd : 10 + 20 ( bằng 30 ) - Tr ừ hai số. Vd : 20 - 10 (bằng 10 ) * Nhân hai s ố. Vd : 20 * 10 ( bằng 200 ) / Chia hai s ố. Vd : 20 / 10 ( bằng 2 ) & Ghép hai chu ỗi với nhau. Vd : "one" & 10 ( bằng "one10" ) ^ L ũy thừa. Vd : 2 ^ 4 ( bằng 16 ) = So sánh b ằng (không phân biệt chữ hoa v à ch ữ th ư ờng khi so sánh chuỗi). Vd : If $var= 5 Then (trả về true n ếu biến $var mang giá trị 5) == So sánh b ằng (có phân biệt chữ hoa, chữ th ư ờng khi so sánh chuỗi. <> Khác ho ặc Không bằng. > L ớn h ơn. >= L ớn h ơn ho ặc bằng < Nh ỏ h ơn <= Nh ỏ h ơn ho ặc bằng AND Logic Và (c ả hai). Vd : If $var = 5 AND $var2 > 6 Then ( Đi ều kiện trả về True nếu $var bằng 5 Và $var2 lớn hơn 6 ) OR Logic Ho ặc. Vd : If $var = 5 OR $var2 > 6 Then ( Tr ả về True nếu $var bằng 5 Hoặc $var2 lớn hơn 6) NOT Logic Ph ủ định. Vd : NOT 1 ( trả về False ) Nếu trong biểu thức cần xử lý có sử dụng nhiều toán tử thì chúng sẽ được thực hiện theo thứ tự trước sau. Việc tính toán thường được thực hiện từ trái qua phải và tuân theo các qui tắc chung của đại số. Bên dưới là thứ tự ưu tiên của các toán tử : NOT ^ * / + - & < > <= >= = <> == AND OR Ví dụ : 2 + 4 * 10 sẽ có kết quả là 42: Bởi vì phép nhân * có ưu tiên cao hơn phép cộng + , nên 4 * 10 (bằng 40) và 2 + 40 (bằng 42). Để có kết quả tính toán chính xác bạn nên sử dụng cặp dấu ngoặc đơn ( ) để nhóm các biểu thức con một cách thích hợp Mặc dù không được đề cập, song, dấu ngoặc đơn là toán tử có độ ưu tiên cao nhất trong tất cả các toán tử. Vd : (2 + 4) * 10 bằng 60. NOT (12+3)/5 sẽ bằng 0 Đối với toán tử logic AND, OR, ta có ví dụ sau : Vd 1 : If MyFunc1() OR MyFunc2() Then (MyFunc2() sẽ không được gọi nếu như MyFunc1() trả về True) Vd 2 : If MyFunc1() AND MyFunc2() Then [...]... làm việc hiện tại (không chứa dấu "\" ở cuối) Đường dẫn và tên của file AutoIt đang chạy Nếu là mã đã @AutoItExe biên dịch thì trả về đường dẫn và tên của file exe đang chạy @AutoItPID ID của đoạn chương trình script đang chạy trong bộ nhớ @AutoItVersion Số phiên bản của AutoIt như 3.0.102.0 @AutoItX64 Trả về 1 nếu đang chạy dưới AutoIT phiên bản x64 @InetGetActive @InetGetBytesRead @CR @LF Là 1 nếu... hàm của riêng mình sau khi bạn hiểu được AutoIt CÁC CHÚ Ý Đây là những chú ý quan trọng mà bạn nên ghi nhớ để có thể sử dụng AutoIT một cách hiệu quả  AutoIt là một ngôn ngữ kịch bản hoạt động theo cách thông dịch, các lệnh được đọc và thực hiện một cách tuần tự Có nghĩa là đọc đến đâu thì thực hiện đến đó, không đọc hết một lượt như các ngôn ngữ C hay Pascal  AutoIt không có ký hiệu ngăn cách các câu... trong AutoIt phải bắt đầu với 0x và theo sau là các ký số từ 0 đến 9 hoặc/và các ký tự a, b, c, d, e, f Khi tính toán các biểu thức số, bạn không cần quan tâm đến việc giới hạn của kiểu dữ liệu Nếu kết quả là số nguyên, AutoIt sẽ trả về cho bạn số nguyên Nếu kết quả là số thập phân, AutoIt sẽ trả về giá trị thập phân Ở dạng thập phân, giá trị lớn nhất có thể chứa là (264 - 1)/2 Một số hàm trong AutoIt. .. cách thức đó do chính AutoIt qui định và một đoạn mã chạy được có dạng tổng quát như sau : Ví dụ : ; chương trình đơn giản hiện thông điệp hello world ; và welcome to autoit Global $m $m = "Hello world" MsgBox(0, "My Msg", $m) MsgBox(0, "Msg", "Welcome to AutoIt" ) Tùy vào mục đích... chuyển đổi tự động, tùy vào hàm sử dụng Ví dụ như BitAnd KIỂU CHUỖI - STRING Chuỗi ký tự được rào trong cặp dấu ngoặc kép " " hoặc cặp dấu nháy đơn ' ' Ví dụ : "this is a string" ' Welcome to AutoIt ! ' Mặc dù AutoIt hỗ trợ hai phương thức biểu diễn chuỗi nhưng khi sử dụng bạn phải sử dụng thống nhất có trật tự, không thể bắt đầu rào chuỗi với dấu ngoặc kép, kết thúc chuỗi với dấu nháy đơn và ngược... string($bin) > "0x616263" KIỂU CON TRỎ - POINTER Kiểu con trỏ dùng để lưu trữ địa chỉ bộ nhớ 32 bit hoặc 64 bit tùy vào phiên bản AutoIt được sử dụng Thực chất con trỏ là một số nguyên chỉ định vị trí của thành phần dữ liệu nào đó trong bộ nhớ Tuy nhiên, khi truy xuất trong AutoIt thì con trỏ sẽ được lưu ở dạng hexa trong một biến kiểu chuỗi Handle (tạm dịch là kênh hay địa chỉ trong bộ nhớ) của cửa... tiếp (trong c và pascal thì sử dụng dấu chấm phẩy ; để ngăn cách các câu lệnh)  AutoIt không phân biệt chữ hoa và chữ thường đối với các lệnh được viết (ngoại trừ Title của cửa sổ, xem phần Window Title) Ví dụ, biến $var, $VAR và $VaR chỉ là một biến  Tất cả các thành phần liên quan đến việc tạo và xử lý cửa sổ được AutoIt hỗ trợ rất mạnh, chúng là các hàm chức năng tương ứng Tuy nhiên, trong giới... được trình điều khiển bỏ qua khi đọc đến Và AutoIt hỗ trợ hai dạng chú thích Chú thích theo dòng (sử dụng dấu chấm phẩy để báo hiệu) và chú thích theo đoạn (sử dụng cặp #cs #ce) để rào các dòng chú thích bên trong Ví dụ : ; this is a first comment line ; this is a second comment #cs .comment start Comment 1 Comment 2 comment end #ce MsgBox(0, "msg", "Welcome to AutoIT" ) KHAI BÁO BIẾN Biến là một đại diện... phải có cùng kiểu dữ liệu, hoặc là số, hoặc là chuỗi Nhưng trong AutoIt, một mảng có thể chứa mọi thứ, từ một số cho đến một boolean Nói đơn giản là có thể chứa các phần tử có kiểu dữ liệu khác nhau Tuy nhiên, điều này không được khuyến khích Ví dụ : $arr[0] = 1 $arr[1] = true $arr[2] = "my text" $arr[3] = $another_array + Một mảng trong AutoIt chỉ cho phép chứa tối đa 224 (16 777 216) phần tử MACRO... số làm tươi của màn hình, tính theo hezt (hz) Macro liên quan đến AutoIt Phần này chỉ trình bày một số Macro thông dụng Các macro còn lại các bạn tự xem @compiled Trả về 1 nếu mã đã được biên dịch, ngược lại trả về 0 @error Cờ biểu thị trạng thái lỗi Xem hàm SetError @exitCode Mã thoát được thiết lập bởi lệnh Exit @exitMethod Xem Func OnAutoItExit() @extended @NumParams @ScriptName @ScriptDir @ScriptFullPath . Bài giảng Autoit GIỚI THIỆU VỀ AUTOIT AutoIt v3 là một ngôn ngữ lập trình được cung cấp miễn phí, có dạng kịch bản. (Thư m ục cấp tr ên) AutoIt3 .exe Chương tr ình chính c ủa AutoIt đ ể chạy các file script AutoIt3 _x64.exe Phiên b ản x64 của AutoIt (nếu có c ài đ ặt). AU3Info.exe AutoIt Window Info. x64 của AutoIt (nếu có c ài đ ặt). AU3Check.exe Trình ki ểm tra cú pháp . AutoIt. chm File tr ợ giúp, sử dụng AutoIt3 .chm và UDFs3.chm Uninstall.exe Trình g ỡ bỏ AutoIt AutoIt

Ngày đăng: 27/06/2014, 12:20

TỪ KHÓA LIÊN QUAN

w