AutoIT tut 21 : Macro

0
0
(0)

MACRO

Macro hiểu đơn giản là các lệnh ngắn gọn được thiết kế sẵn để lấy các thông tin từ hệ thống hoặc ứng dụng. Giá trị của chúng có thể không cố định vì phụ thuộc vào vào hệ thống. Trong AutoIt, các macro được bắt đầu với ký tự @ và theo sau tên của macro. Bên dưới là các Macro thường được dùng .

Macro thời gian

@MSECMili giây hiện tại của đồng hồ hệ thống. Vùng giá trị từ 00 đến 999
@SECGiây hiện tại. Vùng giá trị từ 00 đến 59
@MINPhút hiện tại. Vùng giá trị từ 00 đến 59
@HOURGiờ hiện tại, theo dạng 24 giờ. Vùng giá trị từ 00 đến 23
@MDAYNgày hiện tại trong tháng. Vùng giá trị từ 01 đến 31
@MONTháng hiện tại. Vùng giá trị từ 01 đến 12
@YEARBốn ký số của năm hiện hành
@WDAYThứ trong tuần. Vùng giá trị từ 01 đến 7, tương ứng : 1=CN, 2= Thứ 2,…
@YDAYNgày hiện tại là ngày thứ bao nhiêu trong năm. Vùng giá trị từ 01 đến 366 (hoặc 365 nếu không phải năm nhuận)

Macro thư mục

Áp dụng cho tất cả người dùng (All User). Các giá trị đọc từ : HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion
@AppDataCommonDirđường dẫn đến thư mục  Application Data
@DesktopCommonDirđường dẫn đến thư mục  Desktop
@DocumentsCommonDirđường dẫn đến thư mục  Documents
@FavoritesCommonDirđường dẫn đến thư mục  Favorites
@ProgramsCommonDirđường dẫn đến thư mục  Start Menu’s Programs
@StartMenuCommonDirđường dẫn đến thư mục  Start Menu
@StartupCommonDirđường dẫn đến thư mục  Startup
Phần này áp dụng cho người dùng hiện hành. Các giá trị đọc từ : HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion
@AppDataDirđường dẫn đến thư mục Application Data của người dùng.
@DesktopDirđường dẫn đến thư mục Desktop của người dùng
@MyDocumentsDirđường dẫn đến thư mục My Document
@FavoritesDirđường dẫn đến thư mục Favorites
@ProgramsDirđường dẫn đến thư mục Programs (thư mục trên Start Menu)
@StartMenuDirđường dẫn đến thư mục Start Menu
@StartupDirđường dẫn đến thư mục Startup
@UserProfileDirđường dẫn đến thư mục Profile
 
Phần này lấy các thông tin liên quan đến hệ thống máy tính
@HomeDriveKý tự của ổ đĩa chứa thư mục home của user
@HomePathMột phần đường dẫn đến thư mục home. Sử dụng thêm @HomeDrive&”\” để có đường dẫn đầy đủ
@HomeShareThư mục home chứa tên Server và tên chia sẻ.
@LogonDNSDomain DNS Domain đã đăng nhập
@LogonDomainDomain đã đăng nhập.
@LogonServerServer đã đăng nhập
@ProgramFilesDirĐường dẫn đến thư mục Program Files
@CommonFilesDirĐường dẫn đến thư mục Common Files
@WindowsDirĐường dẫn đến thư mục Windows
@SystemDirĐường dẫn đến thư mục System của Windows (hoặc System32)
@TempDirĐường dẫn đến thư mục chứa các file tạm
@ComSpecGiá trị của  %comspec%, (SPECified secondary COMmand interpreter) dùng cho command line, ví dụ :  Run(@ComSpec & ” /k help | more”)

Macro hệ thống

@CPUArchTrả về “x86” cho CPU 32 bit và “x64” cho CPU 64 bit
@KBLayoutTrả về mã hiển thị của bàn phím. Xem trong Appendix để biết giá trị
@OSArchTrả về một trong các giá trị sau : “X86”, “IA64”, “X64” – cho biết kiến trúc của hệ điều hành đang chạy.
@OSLangTrả về mã hiển thị của hệ điều hành. Xem trong Appendix
@OSTypeTrả về “WIN32_NT” cho Windows NT/2000/XP/2003/Vista/2008.
@OSVersionTrả về một trong các giá trị sau : “WIN_2008”, “WIN_VISTA”, “WIN_2003”, “WIN_XP”, “WIN_2000”.
@OSBuildTrả về số xây dựng của Hệ điều hành. Ví dụ, Windows 2003 Server trả về 3790
@OSServicePackGói dịch vụ của hệ điều hành dạng như “Service Pack 3” hoặc, đối với Windows 95, nó có thể trả về “B”
@ComputerNameTên mạng của máy tính.
@UserNameID của người dùng đã đăng nhập hiện hành .
@IPAddress1Địa chỉ IP của card mạng thứ nhất. Có thể trả về 127.0.0.1 trên vài máy tính
@IPAddress2Địa chỉ IP của card mạng thứ hai. Returns 0.0.0.0 nếu không dùng được
@IPAddress3Địa chỉ IP của card mạng thứ ba. Returns 0.0.0.0 nếu không dùng được
@IPAddress4Địa chỉ IP của card mạng thứ tư. Returns 0.0.0.0 nếu không dùng được
  
@DesktopHeightChiều cao của màn hình desktop (pixel)
@DesktopWidthChiều rộng của màn hình desktop (pixel)
@DesktopDepthĐộ sâu của màn hình desktop (tính theo bit)
@DesktopRefreshTần 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
@errorCờ biểu thị trạng thái lỗi. Xem hàm SetError
@exitCodeMã thoát được thiết lập bởi lệnh Exit
@exitMethodXem Func OnAutoItExit()
@extendedMột giá trị mở rộng được trả về từ một hàm. Xem hàm StringReplace
@NumParamsTổng số thông số đã sử dụng trong việc gọi hàm của người dùng..
@ScriptNameTên của file script đang chạy
@ScriptDirĐường dẫn đến thư mục chứa file script đang chạy. (không chứa dấu “\” ở cuối )
@ScriptFullPathBằng với @ScriptDir & “\” & @ScriptName
@ScriptLineNumberSố thứ tự của dòng lệnh đang được thi hành. Thích hợp cho việc debug.
@WorkingDirThư mục làm việc hiện tại (không chứa dấu “\” ở cuối)
@AutoItExeĐường dẫn và tên của file AutoIt đang chạy. Nếu là mã đã biên dịch thì trả về đường dẫn và tên của file exe đang chạy
@AutoItPIDID của đoạn chương trình script đang chạy trong bộ nhớ
@AutoItVersionSố phiên bản của AutoIt như 3.0.102.0
@AutoItX64Trả về 1 nếu đang chạy dưới AutoIT phiên bản x64
@InetGetActiveLà 1 nếu một InetGet download đã được kích hoạt, ngược lại là 0.
@InetGetBytesReadSuốt quá trình InetGet download, macro này cho số byte đã đọc. Cho -1 nếu có một lỗi download.
  
@CRPhím xuống dòng, Chr(13); đôi lúc hữu dụng cho các ngắt dòng
@LFTín hiệu xuống dòng, Chr(10); đặc trưng cho việc ngắt dòng
@CRLF= @CR & @LF ; đôi lúc hữu dụng cho các ngắt dòng
@TABPhím Tab, Chr(9)

How useful was this post?

Click on a star to rate it!

Average rating 0 / 5. Vote count: 0

No votes so far! Be the first to rate this post.

Leave A Reply

Your email address will not be published.