Đồ án môn học quản trị mạng

5)Tìm hiểu và lập trình ứng dụng windown với autoIT : Giới hạn vùng di chuyển Muose pointer Giới thiệu về AutoIt. Lịch sử phát triển AutoIt là gì? Nó có được coi là một ngôn ngữ lập trình ko? Đó là câu hỏi thường được nhắc đi nhắc lại. AutoIt là một ngôn ngữ dễ học, dễ sử dụng, giúp người dùng có thể thực thi những công việc mình thường phải làm trên máy tính một cách tự động. Bằng cách giả lập các phím bấm, các nút click chuột, cùng với khả năng tương tác với các cửa sổ, các chương trình, các file trong máy tính AutoIt có thể làm được rất nhiều việc. Nhỏ, nhẹ, thậm chí có thể ko cần cài đặt, khả năng tương thích cao (từ Win 95 đến Win 2k3) và khả năng xuất ra file exe đã khiến AutoIt trở nên thông dụng và ngày càng được nhiều người biết đến. Riêng ở VN, AutoIt được biết đến thông qua hàng loạt những “virus” phát tán qua YM Có thể nói đây là một “hướng đi” khác của các chương trình viết bằng AutoIt, góp phần ko nhỏ khiến cho ngày càng nhiều các công cụ anti-virus nhận diện chương trình viết bằng AutoIt là virus, bất luận mục đích thực sự của những chương trình này là tốt hay xấu. Ban đầu, các file mã nguồn AutoIt mang đuôi .ini (AutoIt 1), sau chuyển sang .aut (AutoIt 2) và giờ là .au3 (AutoIt 3). Mã nguồn chương trình AutoIt từ chỗ khá rắc rối (phiên bản 2) đã trở nên cực kỳ đơn giản và dễ hiểu (phiên bản 3), do khá gần gũi với ngôn ngữ BASIC. Cũng nên nói thêm một chút, trong quá trình đi từ AutoIt 2 lên AutoIt 3, một lập trình viên trong nhóm phát triển AutoIt đã quyết định tách ra thực hiện một dự án mới, mang lại nhiều tính năng mạnh mẽ thậm chí còn hơn AutoIt - tuy vậy cú pháp ngôn ngữ này cực kỳ phức tạp và khó hiểu , ko trong sáng như AutoIt 3.

doc13 trang | Chia sẻ: tlsuongmuoi | Lượt xem: 2466 | Lượt tải: 3download
Bạn đang xem nội dung tài liệu Đồ án môn học quản trị mạng, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
TRƯỜNG CAO ĐẲNG KINH TẾ KỸ THUẬT THIỆN TRỤ -----------oOo---------- BÁO CÁO ĐỒ ÁN MÔN HỌC Ngành : Quản trị mạng Hệ : Chính Quy Niên khóa :2008-2011 Tên đề tài : Tìm hiểu về AutoIT Sinh viên thực hiện : Phạm Thanh Long Người hướng dẫn: …………………………… Năm 2011. 5)Tìm hiểu và lập trình ứng dụng windown với autoIT : Giới hạn vùng di chuyển Muose pointer Giới thiệu về AutoIt. Lịch sử phát triển AutoIt là gì? Nó có được coi là một ngôn ngữ lập trình ko? Đó là câu hỏi thường được nhắc đi nhắc lại. AutoIt là một ngôn ngữ dễ học, dễ sử dụng, giúp người dùng có thể thực thi những công việc mình thường phải làm trên máy tính một cách tự động. Bằng cách giả lập các phím bấm, các nút click chuột, cùng với khả năng tương tác với các cửa sổ, các chương trình, các file trong máy tính… AutoIt có thể làm được rất nhiều việc. Nhỏ, nhẹ, thậm chí có thể ko cần cài đặt, khả năng tương thích cao (từ Win 95 đến Win 2k3) và khả năng xuất ra file exe đã khiến AutoIt trở nên thông dụng và ngày càng được nhiều người biết đến. Riêng ở VN, AutoIt được biết đến thông qua hàng loạt những “virus” phát tán qua YM Có thể nói đây là một “hướng đi” khác của các chương trình viết bằng AutoIt, góp phần ko nhỏ khiến cho ngày càng nhiều các công cụ anti-virus nhận diện chương trình viết bằng AutoIt là virus, bất luận mục đích thực sự của những chương trình này là tốt hay xấu. Ban đầu, các file mã nguồn AutoIt mang đuôi .ini (AutoIt 1), sau chuyển sang .aut (AutoIt 2) và giờ là .au3 (AutoIt 3). Mã nguồn chương trình AutoIt từ chỗ khá rắc rối (phiên bản 2) đã trở nên cực kỳ đơn giản và dễ hiểu (phiên bản 3), do khá gần gũi với ngôn ngữ BASIC. Cũng nên nói thêm một chút, trong quá trình đi từ AutoIt 2 lên AutoIt 3, một lập trình viên trong nhóm phát triển AutoIt đã quyết định tách ra thực hiện một dự án mới, mang lại nhiều tính năng mạnh mẽ thậm chí còn hơn AutoIt - tuy vậy cú pháp ngôn ngữ này cực kỳ phức tạp và khó hiểu , ko trong sáng như AutoIt 3. AutoIt có thể được tải về từ trang chủ AutoItScript 2. Những công cụ cần dùng để viết các chương trình bằng AutoItHiển nhiên, trước tiên bạn cần có AutoIt. AutoIt được phân phối ở 2 dạng: Installer và ZIP. Phiên bản mới nhất là 3.2.0.1. Ở dạng Installer, bạn sẽ down về một file exe: autoit-v3.2.0.1-setup.exe - bộ cài của AutoIt. Down bộ cài đồng nghĩa với việc bạn sẽ có thêm nhiều tiện ích khi sử dụng AutoIt. Ví dụ, khi bạn kích chuột phải vào 1 file .au3, sẽ có tùy chọn cho phép bạn chạy script / sửa script bằng editor… Còn dạng ZIP: autoit-v3.2.0.1.zip - dạng này cho phép bạn sử dụng AutoIt ở bất cứ đâu mà ko cần phải cài đặt (tạo rác trong registry). Đây chính là bản portable mà bạn có thể đặt trong USB stick của mình Để soạn thảo file .au3, bạn có thể dùng bất cứ trình soạn thảo nào, thậm chí là Notepad của Windows Nếu muốn pzo hơn, có tính năng highlight code, chạy thử code bằng cách bấm F5… bạn có thể sử dụng SciTE. Đây là bản SciTE đã được sửa đổi để giúp bạn trong quá trình sử dụng AutoIt. Hoặc, bạn có thể dùng Textpad, Crimson Editor hay PSPad để viết các chương trình AutoIt. Các file syntax dành cho 3 trình soạn thảo này được kèm trong thư mục Extras\Editors của AutoIt. Sau khi tiến hành cài đặt / giải nén AutoIt, bạn sẽ thấy một số file quan trọng nằm trong thư mục này và các thư mục con: * AutoIt3.exe - Công cụ dùng để chạy các mã nguồn viết bằng AutoIt * Aut2Exe.exe - Công cụ biên dịch file .au3 thành .exe để phân phối * Exe2Aut.exe - Công cụ dịch ngược file .exe (viết bằng AutoIt - hiển nhiên) về .au3 * Au3Info.exe - Công cụ cho biết thông tin về các cửa sổ trên màn hình Còn khá nhiều file khác, tuy nhiên trên đây là những công cụ cần thiết nhất. Cài Đặt: Trước tiên tải cái AutoIT về từ đây nè: AutoIT v3.2.12.1 ( - Cài đặt cái này rất dễ, cứ để nó mặc định rồi Next..next... là tốt nhất. - Tiếp theo là tạo 1 file *.au3 bằng cách: Phải Chuột (R-Click) => Chọn New => Chọn AutoIt ... Lúc nàymình sẽ có 1 file *.au3. - Tụi mình chỉ cần R-Click lên file vừa tạo chọn Edit Script là có thể viết code cho file này. Giao diện soạn thảo của AutoIt rất đơn giản chỉ gồm 1 Menu Chính và 1 Toolbar với những nút quen thuộc. Bây giờ viết 1 đoạn mã sau vào rồi bấm F5 để kiểm tra nha. MsgBox(0,"Hello","AutoIT AutoIT") Ví dụ : #cs ---------------------------------------------------------------------------- AutoIt Version: 3.2.12.0 Author: myName Script Function: Template AutoIt script. #ce ---------------------------------------------------------------------------- ; Script Start - Add your code below here MsgBox(0,"Hello","AutoIT AutoIT") -AutoIT có những chương trình nhỏ kèm theo với những chức năng hỗ trợ đắc lực cho trình soạn thảo, hay nói khác hơn là hỗ trợ cho lập trình viên. Những tiện ích này tụi mình có thể tìm thấy trong thư mục cài AutoIT, hoặc qua các Shortcut trong Start Menu => Programs => AutoIT.... Việc sử dụng những tiện ích này cũng không khó, ta sẽ đi tìm hiểu về chúng ngay bây giờ :041: * file : \AutoIt3\Aut2Exe\Aut2exe.exe - Trước tiên phải kể đến đó là trình biên dịch Aut2Exe -AutoIT có những chương trình nhỏ kèm theo với những chức năng hỗ trợ đắc lực cho trình soạn thảo, hay nói khác hơn là hỗ trợ cho lập trình viên. Những tiện ích này tụi mình có thể tìm thấy trong thư mục cài AutoIT, hoặc qua các Shortcut trong Start Menu => Programs => AutoIT.... Việc sử dụng những tiện ích này cũng không khó, ta sẽ đi tìm hiểu về chúng ngay bây giờ :041: * file : \AutoIt3\Aut2Exe\Aut2exe.exe - Trước tiên phải kể đến đó là trình biên dịch Aut2Exe, không có nó AutoIT chẳn khác nào Dàn ông Không có ... - Bạn chỉ nhập địa chỉ File AU3 (Source) và địa chỉ File EXE (Destination) rồi bấm Convert là xong. Ngoài ra bạn có thể chọn Icon cho File EXE, Icon bạn chọn sẽ được chèn thẳng vào File EXE. - Còn phần lựa chọn kiểu hệ thống chạy cho file EXE, bạn cứ để Unicode là được vì nó thông dụng, hơn nữa những lựa chọn còn lại mình cũng chưa có dịp thử nên không thể giải thích rõ được. * file\AutoIt3\Extras\Exe2Aut\Exe2Aut.exe - Nếu có trình dịch từ AU3 thành EXE thì có trình dịch từ EXE sang AU3 không . Theo mình thấy là có, đó là Exe2Aut. Tuy nhiên bản thân mình chưa bao giờ dùng đến nó , bởi trình biên dịch từ AU3 sang EXE của mình không có phần Passphrase , đây là mật khẩu bảo vệ Code của bạn tránh bị người khác dịch lại từ File EXE mà bạn đã Share cho họ. - Tuy nhiên theo mình thấy cách bảo vệ code tốt nhất là làm cho nó không thể dịch ngược được, nên nếu có thiếu Exe2Aut thì AutoIT chỉ giống như thiếu đi 1 cái móng vuốt không có gì đáng lo. - Tuy nhiên mình vẫn có cách khác dịch ngược File EXE bằng các công cụ Unpack. * file \AutoIt3\Au3Info.exe - So với 2 tiện ích trên thì tiện ích mình sắp giới thiệu sau đây có thể nói là hữu dụng hơn rất nhiều , có nó AutoIT như Hổ thêm Cánh, đó là Window Info. Không có nó 1 số Hàm trong AutoIT khó mà phát huy tác dụng, đôi khi trở nên vô dụng. - Window Info có thể cho tụi mình xem những thông tin về 1 đối tượng nào nó, đối tượng này có thể là 1 Chương Trình đang chạy hay 1 phần của chương trình đó (ví dụ như 1 Nút). Với những thông tin có được về đối tượng bạn có thể truy xuất dữ liệu hoặc điều khiển đối tượng 1 cách chính xác hơn, giúp tiết kiệm các giải thuật dò tìm đối tượng. - Việc dùng nó cũng không khó,bài 3 tui sẽ hướng dẫn các bạn tìm hiểu vè window Ìno * file \AutoIt3\AutoIt.chm - Tiện ích cuối cùng, cũng không kém phần quan trọng mà người mới tập về lập trình nào nghe tới cũng phải nản là AutoIt Help File. Mình biết 1 File toàn tiếng Anh, không phải là món mà Newbie nào cũng thích gặm, nhưng các bạn nên biết trong đó không chỉ toàn tiếng Anh không mà còn có Code nữa. - Không ít bạn lên mạng post bài xin code về học hỏi, nhưng không hề biết rằng có rất nhiều Code trong File Help này, tất cả những gì mình viết trong loạt bài hướng dẫn này 90% đều xuất phát từ trong đó ra. - Nếu bạn không rành tiếng Anh cũng không sao, vì bản thân mình bằng A còn chưa có nè . Để sử dụng File này không khó chỉ giống như tra cứu từ điển, bạn có thể tham khảo thêm bài số 4 . Không chỉ có những tiện ích đi kèm theo bộ Setup của AutoIT, mà còn có một số tiện ích khác hỗ trợ cho việc thiết kế giao diện chương trình. Những tiện ích loại này giúp cho người dùng có thể tạo ra Giao Diện Người Dùng (Interface) chỉ bằng cách kéo thả các đối tượng như Nút (Button), Bảng chữ (Label), Bảng Nhập (Input),... sau đó chuyển thành những đoạn Code AuotIT để có thể chèn vào chương trình. Tiện ích đáng chú ý nhất trong thể loại này là Koda và bài hướng dẫn Thiết Kế Giao Diện của mình cũng chỉ thực hiện trên Koba là chính. - Ta sẽ làm quen với cách sử dụng tiện ích này ở bài thiết kế giao diện cho chương trình, còn bạn nào muốn vọc trước có thể lấy nó về từ Link này: Koda ( - Còn nữa dó là Công Cụ lấy mã số Hex của 1 màu bất kỳ, rất cần thiết khi thiết kế giao diện trong AutoIT. Vì nó là Flash nên bạn có thể dùng trực tuyến hoặc R-Click rồi Save as... bằng Link bên dưới. * ColorChooser ( - Trong AutoIT cũng dùng màu ở dạng số Thập Phân (Dec) nên mình đã làm 1 công cụ (Bằng AutoIT) chuyển đổi giữa 2 loại số này, đây là Link Download: Sai TestColor ( Ngoài ra còn 1 số thứ hữu ích và kém hữu ích khác như: Các File AU3 chứa Code làm mẫu trong thư Mục \AutoIt3\Examples Tiện ích tự động cập nhật phiên bản AutoIT Chuyển các File AUT (AutoIT v2) thành File AU3 (AutoIT v3) Bài 3 : Sử dụng window info Để có thể tận dụng hết sức mạnh của AutoIT thì không thể bỏ qua Tiện ích này. Tuy nhiên sau khi đọc bài này xong, bạn nào có cách khác hoặc có chương trình nào tốt hơn vẫn có thể dùng, vì mục đích cuối cùng là làm sao lấy được thông tin của những đối tượng cần Tương Tác, do đó dùng cách nào cũng không quan trọng . - Sử dụng Window Info thật ra không có gì khó, vì những gì tụi mình phải làm là Rê chuột và Đọc . Rê chuột thì chắc khỏi chỉ nha (còn bạn nào không biết thật, nhất là girl mình kèm cho 1 khóa Rê Chuột ), vấn đề còn lại đọc cái gì. Đọc cái gì thì phụ thuộc vào chuyện tụi mình Rê Chuột vô cái gì. Bây giờ mình làm thẳng 1 ví dụ để dễ hiểu: - Giả sử mình cần thông tin về chương trình Calculator.exe và Nút Backspace có trong Calculator. Giờ ta mở Calculator lên, đây là máy tính cầm tay Ảo có sẵn trong WindowXP. Khi mở giao diện Calculator lên có thể khác với Hình minh họa, bạn nào biết thì chỉnh lại, không thì cứ để kệ nó không sao. Calculator: C:\WINDOWS\system32\calc.exe - Sau đó mở Window Info của AutoIT lên. \AutoIt3\Au3Info.exe - Tiếp đến Rê Chuột lên Calculator, sẽ không có gì xảy... - Hì hì ghẹo các bạn 1 tý cho đỡ mệt, thật ra muốn lấy thông tin 1 đối tượng nào đó thì yêu cầu là Window Info không được ở trên cùng. - Vậy cuối cùng ở bước này việc ta phải làm là: Rê Chuột lên Calculator và Click (Để cho Calculator ở trên cùng). Lúc này bạn sẽ thấy tiêu đề của Window Info mờ đi và xuất hiện các thông tin có liên quan đến Calculator. Mình sẽ giải thích từ trên xuống: Đầu tiên là vùng Basic Window Info trong vùng này có 2 thông tin cần đọc là Title tên của Calculator và Class cái này mình không biết dịch chính xác thế nào, nhưng có thể hiểu Class giống như Tên Trong của Calculator (Chương Trình) nó cũng được dùng để nhận dạng chương trình. AutoIT có 1 hàm có thể thay đổi thông tin của Title, nhưng thông tin của Class thì không thể thay đổi. Dựa vào 2 thông tin cơ bản này, dùng Code AutoIT có thể nhận dạng và điều khiển Calculator 1 cách khá chính xác. Vùng tiếp theo là Basic Control Info vùng này cũng có 2 thông tin (có thể bị trống), đó là thông tin nhận dạng của các đối tượng nằm trong Calculator, tương tự như Title và Class ở trên. Nhân tiện mình nói luôn, AutoIT gọi các Đối Tượng thuộc 1 Chương Trình là Control và Gọi 1 Chương Trình là Window, từ nay tụi mình cũng sẽ gọi như thế để dễ phân biệt. Vùng cuối cùng là các Tab với nhưng thông tin khác bên trong, nhìn tên Tab chắc những bạn biết tiếng Anh cũng hiểu được phần nào nội dung bên trong Tabs là gì. - Để chắc ăn mình sẽ giải thích ý nghĩa các thông tin trong từng Tab (từ Trái sang Phải) cho các bạn: Đầu tiên là Tab Window Title và Class: 2 thông tin này với thông tin Title/Class trên vùng Basic Window Info hoàn toàn là 1, chúng không có gì khác nhau nên không phải nó thêm. Position: đây là thông tin về vị trí của Calculator, được tính bằng vị trí điểm Bên Trái - Góc Trên Cùng của Calculator. Trong đó số thứ nhất là chiều Ngang (khoảng cách từ Trái qua), số thứ hai là chiều Dọc (khoảng cách từ Trên xuống). 2 số này trên lý thuyết là không thể nhỏ hơn 0 và lớn hơn kích thước của màn hình, nhưng thực tế chúng vẫn có thể vượt qua 2 giới hạn đó. Nếu tụi mình di chuyển Calculator thì 2 thông số này sẽ thay đổi theo. Size: là kích thước của Calculator, số thứ nhất là chiều Ngang (Width), số thứ 2 là chiều Cao (Height), 2 số này có thể thay đổi bất kỳ lúc nào bởi các Hàm của AutoIT. Tuy nhiên việc thay đổi chúng có thể ảnh hưởng tới giao diện của chương trình. Style: là mã số Kiểu của Calculator, nói đúng hơn là kiểu Window, thông tin này được lưu dưới dạng số Hex. Khi thay đổi thông tin này với 1 giá trị thích hợp, kiểu của Window sẽ bị thay đổi. Tụi mình sẽ nói nhiều hơn về mã số này trong những bài sau. ExStyle: là mã số của kiểu mở rộng, mã số này dùng kết hợp với Style sẽ cho ra nhiều kiểu Window phong phú. Handle: đây là thông tin đáng quan tâm nhất trong Tab này, vì Handle được xem là mã số của đối tượng. Thông qua Title và Class lập trình viên phải có giải thuật để lấy được mã số Handle này, thông tin Handle có được trong Window Info chỉ có tính chất kiểm tra. Mã số này được cấp phát 1 cách không trùng lặp cho các đối tượng mỗi khi chúng được tạo ra. Khi có được thông tin về Handle của 1 Đối Tượng nào thì tụi mình hoàn toàn có thể kiểm soát được đối tượng đó. Tab Control - Giờ tụi mình Rê Chuột lên Nút Backspace của Calculator. Class và Instance: cũng là 2 thông tin được hiển thị ở vùng Basic Control Info, chúng có vai trò giống như Title và Class của Calculator. ClassnameNN và Advanced(Class): cũng là 2 thông tin hỗ trợ cho việc nhận dạng các Nút Backspace. Thông tin của chúng là sự kết hợp của Class và Instance, giúp tiết kiệm biến khi lập trình. ID: đây cũng là mã ở dạng số thập phân, trong 1 chương trình các Control thường có ID tăng dần từ 1. Nó có thể thay thế cho Handle trong việc kiểm soát các Control nói chung và Nút Backspace nói riêng, thông tin ID không cần giải thuật để xác định bởi nó là cố định, lập trình viên có thể dùng Window Info để xem thông tin về ID và đưa thẳng vào Code. Tuy nhiên không phải bất kỳ Control nào cũng có ID, khi đó cần dựa vào các thông tin còn lại để xác định Handle mới có thể kiểm soát Control. (Thông Tin Mới): Các File Flash [*.SWF] có số ID không theo quy tắc đã kể trên, mà giống như Handle, thay đổi mỗi lần được tạo ra. Text: đây là giá trị chuỗi có trong Nút Backspace cũng chính là "Backspace", thông tin này có thể bị bỏ trống. Nó cũng là phần quan trọng trong việc xác định nút Backspace. Position: cũng giống như Position của Calculator, Postition của nút Backspace cũng là lưu thông tin vị trí. Nhưng vị trí này là vị trí của nút Backspace so với Calculator. Vấn đề này nếu các bạn chưa rõ thì đến phần thiết kế giao diện mình sẽ nói rõ hơn, vì chắc chắn sẽ dùng đến nó khi thiết kế Giao Diện chương trình. ControlClick Coords: đây là thông tin về tọa độ của 1 điểm trên nút Backspace so với chính nút Backspace. Style,ExStyle và Handle: 3 thông tin này hoàn toàn tương tự như của Window, nên mình bỏ qua không giải thích thêm. Tab Visible Text Tab này có vai trò giống như Text của nút Backspace, hiển thị nội dung văn bản có trong Calculator. Vì nó có thể chứa đựng 1 nội dung lớn nên được đưa ra 1 Tab riêng và cũng có thể bị bỏ trống. Tab Hidden Text Nếu Tab Text hiển thị nội dung văn bản có tính chất Công Khai (dễ dàng nhìn thấy) thì Tab này sẽ hiển thị nội dung bị ẩn đi bởi 1 lý do nào đó, có thể là Người thiết kế Chương Trình (Calculator) cố tình che giấu, trong trường hợp của Calculator Tab Hidden Text bị bỏ trống vì không có thông tin ẩn. Tab StatusBar Đây là Tab hiển thị toàn bộ nội dung có trên thanh trạng thái của 1 Calculator. Tab gồm có 2 phần: thứ nhất là bên trái (Property) là số thứ tự của nội dung và phần bên phải (Value) là nội dung của StatusBar. Nhưng vì Calculator không có Thanh Trạng Thái nên Tab này bị bỏ trống. Tab Mouse Position: hiển thị thông tin về Vị Trí chuột, thông tin này có thể dùng cho việc xác định vị trí 1 Đối Tượng bất kỳ đối với Màn Hình, có thể tạm thay thế cho Position của Đối Tượng đó. CursorID: là mã số mô tả kiểu của Con Trỏ Chuột. Giới hạn của mã số này là từ 0 đến 15, tương ứng với 16 kiểu trỏ chuột, trong đó 0 là kiểu không xác định. Color: Đây là mã số Màu ở dạng số Hex của 1 điểm Ảnh (Pixel) mà Con trỏ Chuột chỉ tới. Thông tin này chỉ có tính chất kiểm tra, vì để lấy màu của Điểm Ảnh AutoIT đã có 1 hàm khác làm việc này. Tab Summay: đây là Tab tổng hợp thông tin của các Tab trước, thông tin bên trong được phân theo Tab. - Window Info còn có 1 số Tùy Chọn khác trong Menu Options, nhưng mình chỉ muốn nói thêm về Freeze nó cho phép đóng băng Thông Tin lấy được từ Đối Tượng. Tụi mình nên dùng phím tắt Ctrl+Alt+F để sử dụng chức năng này, như thế sẽ hiệu quả hơn. Chúng Ta Phải nắm được cách tra cứu File Help của AutoIT mới có thể giúp tụi mình sử dụng được nó 1 cách thành thạo trong điều kiện thiếu thốn tài liệu như hiện nay. - Cũng như mình đã nói trước đây, tra cứu File Help này không nhất thiết phải giỏi tiếng Anh, chỉ cần biết xài Từ Điển Anh-Việt là được. Bạn có thề dùng English Study 4.1 với chức năng tra cứu nhanh để tra cứu, cách sử dụng và cách cài đặt English Study mình phải bỏ qua, vì nếu không phải thêm 1 bài nữa, trong khi Hướng Dẫn dùng nó trên mạng có rất nhiều, mong các bạn thông cảm. - Tuy nhiên các bạn có thể tìm kiếm thông tin về nó trên Google, rất dễ không khó đâu. Đây là link down mình tìm sẵn cho các bạn: English Study 4.12 ( - Đối với nhưng bạn không muốn cài phiền phức có thể dùng Từ Điển trực tuyến, trên mạng hiện giờ có rất nhiều, ở đây mình có 1 Link share cho các bạn luôn nè: Từ Điển Trực Tuyến ( - Bây giờ Ta bắt tay vào tìm hiểu cái File Help này nha. Theo mình biết thì Files Help của AutoIT có tất cả 5 File... AutoIt3\AutoIt3.chm: tất cả những gì có liên quan đến AutoIT đều có trong này, nó bao gồm Lịch Sử Phát Triển, Hướng Dẫn Cơ Bản, Thông Tin về các Hàm, Thông tin cập nhật trong mỗi phiên bản của AutoIT,... AutoIt3\UDFs3.chm: ngoài những hàm mặc định có sẵn, trong AutoIT còn có rất nhiều hàm khác, được gọi là Hàm Do Người Dùng Định Nghĩa, chúng được tạo ra từ các hàm Mặc Định trong AutoIT, rồi được gói lại trong 1 File *.AU3 và sẽ được Include theo kiểu Thư Viện (Giống file *.h của C++). Và file UDFs3.chm này chứa tất cả những thông tin về các Hàm tự tạo trên. AutoIt3\AutoIt.chm: thật ra cái này chỉ là File tổng hợp từ 2 cái trên (AutoIt3.chm và UDFs3.chm), muốn dùng cái này phải Copy 2 cái trên để chung 1 thư mục mới xài được. AutoIt3\AutoIt3Help.exe: đây là File Help kiểu EXE, nó được dùng để kích hoạt File AutoIt.chm khi bạn đang viết code trong AutoIT3. AutoIt3\AutoItX.chm: còn cái này cũng không rõ nó dùng làm gì, giống như là File Help AutoIT thời Tiền Sử vậy . - Vậy tóm lại là xài cái nào? - Xài cái AutoIt.chm là đủ rồi, nếu muốn Copy để riêng ra thì Copy thêm 2 cái AutoIt3.chm và UDFs3.chm là được. - Đã xác định được phần cần phải bắt đầu, bây giờ bắt đầu phân tích nó nè : - AutoIt.chm gồm có 2 phần: Bên trái là 4 Tab điều khiển giúp duyệt qua các bài Hướng Dẫn. Bên Phải là nội dung Hướng Dẫn. Chức năng 4 Tab Bên Trái Như sau: Contens: đây là Tab duyệt Cơ Bản, được hiển thì dưới dạng Cây Thư Mục, sử dụng nó không có gì khó giống như xài Explorer thôi. Index: đây là Tab duyệt chi tiết hơn, các bài viết được hiển thị có sự xắp sếp theo Tiêu Đề. Bạn có thể tìm kiếm bài hướng dẫn tại đây, Tab sẽ duyệt qua Tiêu Đề của các bài viết gần giống với Từ Khóa của bạn nhất. Search: cũng là 1 dạng tìm kiếm giống như Index, nhưng Tab này tìm kiếm trong Nội Dung Hướng Dẫn, hễ có từ nào giống với từ khóa bạn nhập vào là nó lọc lấy Nội Dung đó ra. Nếu sử dụng tốt các chức năng lọc trong Tab này bạn sẽ tìm được hướng dẫn mà mình cần, với độ chính xác cao hơn Index. Favotires: khi có những bài hướng dẫn cần dùng nhiều bạn có thể dùng Tab này để lưu tại. Tab sẽ lưu lại bài đang hiển thị ở phần Nội Dung Bên Phải. - Giờ Ta sẽ làm một vài ví dụ cho dễ hiểu hơn: Ví dụ 1: Sử dụng Tab Index: Nhập chữ MouseClick vào, trong khi nhập bạn sẽ thấy Danh Sách Tìm Được có sự thay đổi. Khi nhập xong, tiêu đề nằm trên cùng danh sách chính là Hướng Dẫn gần đúng nhất mà bạn cần tìm. Ví dụ 2: Sử dụng Tab Search: Ta cũng nhập chữ MouseClick vào, không cần hiệu chỉnh gì thêm. Trong khi nhập, nội dung Danh Sách Tìm Được sẽ không có gì thay đổi, cho đến khi bạn Enter hoặc bấm Nút [List Topic] thì kết quả tìm kiếm sẽ được hiện ra. Nếu như không có Tiêu Đề hoặc nội dung bài viết nào mang từ Khóa Mà bạn nhập vào, thì sẽ hiện ra 1 Thông Báo: No Topics found. Còn nếu số lượng tìm được là Quá Lớn, bạn có thể AND tiếp với từ khóa khác có liên quan để rút gọn kết quả. - Tới phần quan trọng nhất của bài này rồi nè, đó là Xem Như Thế Nào. Cách xem này là mình dựa vào kinh nghiệm bản thân (Không rành tiếng Anh ) để viết ra, nên đối với 1 số bạn có thể là vô ích. - Mục đích chính khi tìm hiểu một Hàm là hiểu được chức năng của nó và biết cách sử dụng các biến kèm theo của nó. Để cho dễ tiếp cận mình sẽ lấy Hàm MouseClick() làm ví dụ. Cách tìm nội dung hướng dẫn của hàm này thì qua 2 ví dụ trên, chắc các bạn đã có thể mở được rồi. Nếu vẫn chưa tìm được thì các bạn có thể theo Link bên dưới để duyệt bên Tab Contents: AutoIT => Function Reference => Mouse Control => MouseClick. - Nội dung hướng dẫn hàm MouseClick() nói riêng cũng như những Hàm khác nói chung thường có 7 Phần đó là: Mô Tả; Các Biến; Kết quả dùng Hàm; Lưu ý; Bảng lưu ý; Hàm liên quan và Ví dụ. Mô Tả: đây là phần không thể thiếu khi nói hướng dẫn Hàm, nó cho Ta cách nhìn tổng quát về MouseClick(), gồm các biến Cần và Không cần thiết của Hàm. Đối với những bạn có kinh nghiệm, thì nhìn vào phần này thôi cũng đủ để hiệu và sử dụng tốt Hàm. Còn nếu không, bạn có thể dùng từ điển dịch ra tên của hàm để hiểu hơn về Hàm. Cách dịch như sau: bạn tách tên Hàm ra thành nhiều từ, các từ được đánh dấu bằng chữ viết Hoa đầu tiên. Trong trường hợp Hàm MouseClick() là từ "Mouse" và "Click" có nghĩa là "Chuột" và "Bấm" như thế có thể hiểu là "Bấm Chuột". Các biến được để trong dấu ngoặc Vuông [ ], là những biến không cần thiết phải có khi gọi hàm. Cũng như các bạn thấy, những Cặp Dấu [ ] được chia theo cấp (Lòng nhau). Đối với những biến nào ở cùng cấp, thì khi 1 trong số chúng được truyền vào cho Hàm, những biến còn lại bắt buột cũng phải được truyền theo. Danh Sách Biến (Parameters): đây là phần giải thích về chức năng, kiểu, cũng như những giới hạn của từng biến. Ta có thể dùng những lập luận dưới đây để hiểu hơn về vai trò của các biến. Biến nào có chú thích chữ [optional] ở đầu dòng, có nghĩa biến đó là Không cần thiết truyền vào. Và để hiểu được chức năng của Biến tụi mình có thể dùng Từ Điển, dịch nghĩa của tên hoặc giá trị của biến ra. Nhưng 1 từ có thể có nhiều nghĩa, nhiều kiểu (đôi khi là động từ, đôi khi là danh từ), vậy phải hiểu theo nghĩa nào?. Trong phần Mô Tả, biến nào được để trong Dấu nháy Đôi [ "..." ] thì sẽ hiểu theo nghĩa là Danh Từ. Trong trường hợp của Hàm MouseClick() là "button" - có nghĩa là Nút, kết hợp các giá trị của biến này (trong Parameters) là "left", "right",... tụi mình có thể hiểu là Nút Trái, Nút Phải,... Như thế đủ hiểu Biến "button" này đề cặp đến Nút mà Hàm sẽ nhấn. Đối với các biến không thể xác định bằng cách trên tụi mình còn cách khác. Đó là dựa trên nhưng yếu tố còn thiếu, nhưng cần thiết để thực hiện thao tác mà Hàm đảm nhận, rồi đặt ra những câu hỏi và tìm câu trả lời cho những câu hỏi đó. Ví dụ đối với Hàm MouseClick() là: Bấm nút nào? Bấm ở đâu? Bấm bao nhiêu cái? ... Đối với câu thứ nhất ta có thể dễ dàng trả lời được với lập luận ở trên. Còn đối với câu thứ 2 thì ta xét như sau: màn hình là mặt phẳng hệ tạo độ 2 chiều, do đó sẽ phải gồm 2 số tương đương với 2 biến. Trong phần mô tả Hàm MouseClick() có 2 biến Cùng Cấp, luôn đi chung với nhau là [x] và [y]. Tên 2 biến này trùng với tên 2 trục tạo độ Descartes (2 chiều), vậy rõ ràng chúng là 2 biến cần để xác định vị trí sẽ Bấm. Một số biến có thể dựa vào chức năng của Hàm, đối tượng mà Hàm tác động tới, để hiểu theo những nghĩa gần đúng nhất, rồi thông qua kết quả sử dụng Hàm mà ta rút ra nghĩa chính xác nhất. Như biến clicks, do hàm tác động tới Chuột, với chức năng là Bấm và nghĩa của biến là 1 Động Từ có "s", nên ta hiểu là "Bấm" với 1 số lượng nào đó. Chung quy lại là Số Lượng Bấm của Chuột. Tóm tắt Biến cho Hàm MouseClick: button - Tên Nút sẽ bấm; x,y - Tọa Độ sẽ bấm; clicks - Số lần bấm; speed - Tốc độ bấm; Kết quả dùng Hàm (Return Value): như các bạn đã biết 1 Hàm khi thực thi, thường có giá trị trả về để ta kiểm tra hoặc lấy sử dụng sau khi đã được xử lý. Trong phần này, AutoIT chỉ giải thích các tình huống có thể trả về của Hàm là chính, qua đó ta có thể kiểm tra kết quả hoạt động của Hàm. Thông thường có 2 tình huống trả về đó là True hoặc False. Tuy nhiên cũng có trường hợp Hàm luôn True như của Hàm MouseGetCursor() và đôi khi là nhiều tình huống với sự kết hợp các biến khác của AutoIT như @error. Bằng cách kiểm tra các tình huống trả về khi sử dụng trong thực tế, tụi mình cũng có thể hiểu được phần nào về chúng. Để kiểm tra theo kiểu này, tụi mình cứ việc gán các giá trị trả về đó cho 1 biến bình thường rồi Show chúng ra bằng các Hàm xuất như MsgBox() hoặc Tooltip(). Bên dưới là 2 Files ví dụ cho các bạn chạy kiểm tra. MsgBox.zip ( Tooltip.zip ( Lưu ý (Remarks): Đây là phần giải thích cặn kẽ về cách hoại động của Hàm. Nó thường toàn là chữ không hà nên phần này bạn nào không rành tiếng Anh có thể bỏ qua, mình cũng ích đọc phần này, chỉ khi nào bí quá mới ngồi dịch từng chữ thôi. Bảng lưu ý: Bảng này không phải lúc nào cũng có, nó thường được dùng để mô tả chi tiết hơn về các biến. Nó đôi khi rất ngắn như của MouseClick() nhưng có khi rất dài như của AutoItSetOption(). Tụi mình có thể dùng nó khi đã hiểu khá rõ về Biến mà nó Mô Tả (với mục đích tra cứu là chính), bạn nào nhạy bén có thể từ bảng này mà suy ra được vai trò của biến cũng như chức năng của Hàm mang biến đó. Hàm liên quan (Related): Danh sách này là các Hàm có liên quan hay có một điểm chung nào đó với Hàm hiện tại đang xem. Tại sao AutoIT đưa danh sách này vào Theo mình nghĩ, AutoIT cho rằng nếu nhìn vào Hàm mà không hiểu, thì có thể nhìn vào "bà con" của nó ta sẽ hiểu... Lập luận thế này: nếu như Hàm MouseClick() phức tạp quá không thể hiểu được, thì ta tìm Hàm khác gần giống nó để khảo sát. Ví dụ như Hàm MouseMove(). Hàm này chỉ có 3 biến, mà 3 biến này đều có trong MouseClick(), vậy có khả năng chúng có vai trò giống nhau vì 2 Hàm này có "bà con" mà. Nếu biến ít thì khi khảo sát thực tế, Hàm ít bị "lỗi hoạt động" đo truyền sai thông số của biến hơn. Và khi đã hiểu được 3 biến này, ta tiến hành kiểm tra trên Hàm MouseClick() khả năng chúng giống nhau là rất cao. Ví dụ (Example): Cuối cùng là phần có ích cho việc tìm hiểu nhất, vì nó là Code. Kiến thức về AutoIT của mình có được phần nhiều là từ đây. Đến đây đòi hỏi khả năng đọc hiểu Code, 1 khả năng không thể thiếu đối với các Lập Trình Viên. Nếu bạn nào còn yếu về khả năng này thì lợi dụng lúc này tập luôn đi nha . Khả năng chạy kiểm tra Code của AutoIT rất linh hoạt, không kém gì các ngôn ngữ đàn anh khác. Để kiểm tra Code trong phần này, bạn có thể copy Code dán vào 1 File AutoIT rồi bấm F5 chạy thử. Xin lưu ý là bạn nên bắt đầu với những đoạn Code ngắn trước, vì Code ở đây không hẳn đúng 100% đâu. Đôi khi do cấu hình máy không đúng hoặc Files mà Code cần không có nên đoạn Code bị gián đoạn, tuy nhiên những lỗi đó thường chỉ xãy ra với những đoạn Code dài, ít gặp khi các bạn mới làm quen với AutoIT. Một số Code ví dụ trong phần này có thể được chia ra nhiều phần, mỗi phần được xem như 1 chương trình riêng biệt, nên bạn cần chú ý để tách Code kiểm tra cho chính xác. Ngoài ra trong 1 số cấu hình cài đặt AutoIT (có thể là Sefl Extra), cho phép Kiểm Tra trực tiếp Code trên File Help khi bấm nút [Open this script] có trong phần ví dụ này. Cuối cùng mình xin nói thêm là, trong File Help Của AutoIT còn nhiều dạng nội dung hướng dẫn khác không chỉ Hàm không . Để tìm hiểu thấu đáo hết bọn chúng rồi viết ra thì mất rất nhiều thời gian, như thế thà ngồi Việt Hóa cái File Help còn dễ hơn . Tuy nhiên khi đã hiểu được cách xem Hàm, việc tìm hiểu tiếp những phần khác chắc chắn sẽ đỡ vất vả và nhanh hơn, vì lúc này bạn đã có khái niệm AutoIT là như thế nào, do đó các bạn cũng không cần vội vã tìm hiểu thấu đáo chúng đâu.

Các file đính kèm theo tài liệu này:

  • docBáo cáo đồ án môn học quản trị mạng.doc
Tài liệu liên quan