AutoIt คือ ภาษาสคริปต์ที่ง่ายสุดๆ ถูกออกแบบให้ใช้กับการกระทำซ้ำซากบนวินโดวส์ โดยเขียนโปรแกรมควบคุมผ่านทาง SciTE Script Editor ที่เป็นฟรีแวร์ ดาวน์โหลดมาใช้งานได้ตามลิงก์ด้านล่างนี้นะครับ
http://www.autoitscript.com/autoit3/downloads.shtml
ทำงานกับวินโดวส์ได้ทุกเวอร์ชั่นทั้งแบบ 32 Bit และ 64 Bit (ทดสอบในวินโดวส์ Vista 64 Bit และ Windows7 64 Bit ไม่มีปัญหาใดๆ)
AutoIt ทำอะไรได้บ้าง
- ช่วยติดตั้งโปรแกรมต่างๆ อัตโนมัติ (บทความตอนหน้า)
- ตั้งค่าให้กดคีย์บอร์ด หรือคลิกเม้าส์ ตามเหตุการณ์ที่ตรงกับเงื่อนไขได้
- ควบคุมทุกอย่างในวินโดวส์ เหมือนคนทำ (แต่ใช้โปรแกรมทำแทน)
- สร้างไวรัส, สปายแวร์ได้ (ไม่มีสอน)
- สร้างตัวตรวจจับไวรัสกับสปายแวร์ที่มายุ่งกับวินโดวส์ของเราได้ (มีสอน)
- โกงเกมส์บนเว็บ ช่วยการคลิกได้
- และอื่นๆ ที่คนทำได้ในวินโดวส์ AutoIt นี้ก็จำลองเพื่อทำซ้ำได้เกือบหมด ฯลฯ
เริ่มบทเรียนแรก : สร้างกรอบแสดงข้อความ และเรียกโปรแกรมขึ้นมาทำงาน
หลังติดตั้งโปรแกรมเรียบร้อยแล้ว ก็คลิกเปิดโปรแกรม SciTE Script Editor ขึ้นมาได้เลยครับ ดังรูปด้านล่างนี้
1. พิมพ์ข้อความ msgbox(1, "Test", "Hello 123456" )
2. คลิกปุ่ม Save เพื่อบันทึกงาน ถ้าไม่บันทึกจะทดสอบคำสั่งที่เขียนไม่ได้
3. กดปุ่ม F5 ที่คีย์บอร์ด เพื่อทดสอบ คุณจะเห็นต่างดังรูปด้านล่างนี้ปรากฏขึ้นมา
msgbox = เป็นคำสั่งเรียกกรอบหน้าต่างข้อความ
(1, "Test", "Hello 123456" ) = เป็นค่าตัวแปรที่อยู่ภายในคำสั่ง (ค่าตัวแปรแต่ละอันจะถูกคั่นด้วยเครื่องหมาย , )
เลข 1 คือตัวแปรที่ให้แสดงปุ่ม OK และ Cancel บนหน้าต่าง (ดูลูกศร A)
ถ้าใส่เลขอื่นๆ ก็ให้ผลดังนี้
0 ได้ปุ่ม OK
1 ได้ปุ่ม OK และ Cancel
2 ได้ปุ่ม Abort, Retry, และ Ignore
3 ได้ปุ่ม Yes, No, และ Cancel
4 ได้ปุ่ม Yes และ No
5 ได้ปุ่ม Retry และ Cancel
6 ได้ปุ่ม Cancel, Try Again, Continue
ปุ่มพวกนี้ถ้าคุณกดมันจะส่งค่ากลับมายังโปรแกรมไม่เหมือนกันคือ
OK ส่งค่าเป็น 1
CANCEL ส่งค่าเป็น 2
ABORT ส่งค่าเป็น 3
RETRY ส่งค่าเป็น 4
IGNORE ส่งค่าเป็น 5
YES ส่งค่าเป็น 6
NO ส่งค่าเป็น 7
TRY AGAIN ส่งค่าเป็น 10
CONTINUE ส่งค่าเป็น 11
ค่าพวกนี้เราจะใช้ก็ต่อเมื่อตั้งเป็นเงื่อนไขในการเขียนคำสั่งของบทถัดๆ ไป
"Test" เป็นข้อความบนไตเติลบาร์ (ดูลูกศร B)
"Hello 123456" เป็นข้อความในพื้นที่กรอบหน้าต่าง (ดูลูกศร C)
ลองเปลี่ยนค่าตัวแปรกแล้วกดปุ่ม F5 เพื่อดูผลจะเข้าใจยิ่งขึ้นครับ
ต่อไปก็เป็นการใช้คำสั่งสำหรับเรียกเปิดโปรแกรมขึ้นมา เราลองกันง่ายๆ ด้วยการพิมพ์คำสั่งนี้ลงไป Run ("notepad") พิมพ์เสร็จแล้วก็กดปุ่ม F5 จะเห็นว่าโปรแกรมโน้ตแพดเปิดขึ้นมา
ถ้าคุณจะเรียกโปรแกรมอื่นๆ ให้เปิดขึ้นมาแตกต่างจากนี้ ก็คลิกขวาที่ช็อตคัทของโปรแกรม เลือกคำสั่ง Properties จากนั้นก็คลิกแท็บ Shortcut แล้วก๊อปปี้ข้อความตรงส่วนของ Target: มาวางไว้รูปแบบการใช้คำสั่ง RUN ก็คือ คุณต้องวางตำแหน่งและชื่อไฟล์โปรแกรม ลงในภายในเครื่องหมาย (" ") ตัวอย่างเช่นเช่น
Run ("C:\Program Files (x86)\The KMPlayer\KMPlayer.exe")
หรือ
Run ("C:\Program Files (x86)\uTorrent\uTorrent.exe")
วันนี้จบเพียงเท่านี้ก่อน เดี๋ยวตอนหน้ามาดูวิธีการสร้างไฟล์ติดตั้งโปรแกรมอัตโนมัติกัน
###จบแล้วครับ###
ขอบคุณค่ะสำหรับข้อมูลที่ดีและมีประโยชน์
ReplyDelete. ขอบคุณครับ
ReplyDeleteเยี่ยมมากครับ ผมกำลังหัดทำอยู่ครับ เอามาลงเรื่อยๆนะครับ ขอบคุณครับ
ReplyDeleteแหล่มเลยพี่ เจ๋งมาก หามานานแล้วบทความดีๆแบบนี้
ReplyDeleteThis comment has been removed by the author.
ReplyDeletedim $cur
ReplyDelete$cur = @WorkingDir & "\mysql.data.msi"
Run ($cur)
เขียนผิดตรงไหนครับ หัดทำครับ
ได้แล้วครับ
ReplyDeleteบทความดีมากเลยครับ
ShellExecuteWait(@ScriptDir & "\mysql.data.msi")
ใช้ ShellExecute แทนดีกว่าครับ สคริปต์จะทำงานต่อไปทันทีหลังสั่ง แต่่ถ้าใช้คำสั่งShellExecuteWait สคริปต์จะรอรับค่าโปรแกรมที่สั่งทำงานอีกทีว่าทำงานเสร็จหรือยัง ถึงจะทำงานต่อไป
ReplyDeleteปล. ตอบช้านะครับ ถามตรงนี้เพราะไม่ได้เข้ามาดูบ่อย ยังไงเข้าไปถามตรงฟอรั่ม AutoIt จะตอบเร็วกว่าเพราะเข้าไปเกือบทุกวัน ฟอรั่มตามลิงก์นี้
http://pssix.forumotion.com/forum-f2/
ขอบคุณมากกๆๆๆครับผม
ReplyDelete