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 (MyFunc2() sẽ không được gọi nếu MyFunc1() trả về False) KIỂU DỮ LIỆU Trong AutoIt chỉ có một loại dữ liệu gọi là Variant (tạm dịch là biến). Một biến có thể chứa dữ liệu theo kiểu chuỗi (string) hoặc là kiểu số (number) tùy vào tình huống sử dụng. Ví dụ như nếu bạn nhân hai biến với nhau thì lúc này biến có kiểu number, còn nếu bạn sử dụng phép toán ghép chuỗi với hai biến thì chúng sẽ được đối xử như các chuỗi ký tự. Ví dụ : 10 * 20 sẽ bằng số 200 (* là nhân hai biến với nhau) 10* "20" cũng sẽ bằng số 200 hoặc "10" * "20" cũng bằng số 200 10 & 20 sẽ trả về một chuỗi là "1020" (& là phép toán ghép chuỗi) Nếu một chuỗi được sử dụng như một số, một phép gọi hàm Number()nên được thực hiện. Và nếu như ký tự đầu tiên của chuỗi không phải là một ký số thì sẽ trả về một số 0. Ví dụ : 10 * "abc" sẽ trả về số 0 10* number("abc") cũng trả về 0 10* number("25ghj") sẽ trả về 250 Nếu một chuỗi được sử dụng trong kiểu boolean (True/False) và nó là một chuỗi rỗng "" thì sẽ được xem như bằng 0 (False). KIỂU SỐ - NUMBER Number có thể là số thập phân như : 3, 5.642 và -8 cũng có thể là số thập phân theo dạng khoa học, ví dụ như 1.5e3 sẽ thay cho 1500 (vì 1.5*10^3) hay hệ thập lục phân (hexa) : 0x409 hoặc 0xff4a. Chú ý : Hệ hexa 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à (2 64 - 1)/2. Một số hàm trong AutoIt chỉ làm việc với số nguyên 32 bit (mang giá trị từ 0 đến 2 32 -1) và các số này sẽ được 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 lại. Ví dụ sau cho thấy chuỗi không hợp lệ : " doctor for pc '(sẽ báo lỗi khi chạy) Tuy nhiên, trong trường hợp bạn muốn nhấn mạnh một nội dung nào đó trong chuỗi bằng dấu ngoặc kép hoặc dấu nháy đơn thì AutoIt cũng hỗ trợ việc trộn hai dạng ký tự này. Và bạn phải nhớ tính trật tự và đầy đủ trong khi sử dụng. Ví dụ : ' It is a "black" web ' "This "sentence" contains "lots" of "double-quotes". " " It 's a dog " nhưng ' it 's a dog ' (là một chuỗi bị lỗi) . * 20 sẽ bằng số 20 0 (* là nhân hai biến với nhau) 10* " ;20 " cũng sẽ bằng số 20 0 hoặc "10" * " ;20 " cũng bằng số 20 0 10 & 20 sẽ trả về một chuỗi là "1 020 ". 20 ( bằng 30 ) - Tr ừ hai số. Vd : 20 - 10 (bằng 10 ) * Nhân hai s ố. Vd : 20 * 10 ( bằng 20 0 ) / Chia hai s ố. Vd : 20 / 10 ( bằng 2 ) . là một ký số thì sẽ trả về một số 0. Ví dụ : 10 * "abc" sẽ trả về số 0 10* number("abc") cũng trả về 0 10* number(" ;25 ghj") sẽ trả về 25 0 Nếu một chuỗi được sử