วันพุธ, มกราคม 25, 2555

[Blog] ทำ automate ง่ายๆ ด้วย AutoIt


ช่วงนี้ ต้องมารับจ๊อบพิเศษ( non-profit ) โดยนั่ง restart server ให้ฝ่าย Sale ครับ
เพราะเนื่องด้วย server ดังกล่าวยังเป็น POC Project .... พวก API Bug ต่างๆ
ที่เอามา integrate กันเป็น POC Project จึงยังไม่ support เท่าที่ควร ...
ก็มีแต่ workaround ที่ควรจะเป็นตอนนี้จึงกลายเป็นการสั่ง restart server ทุกวัน !!!
ครั้นด้วยความเป็น Developer ... แน่นอน ว่าตัวเข้เกียจย่อมมีเยอะอยู่แ้ล้ว (ฮา)

จึงต้องไปงัดไม้ตายก้นกรุ ตั้งแต่สมัยทำ Bot ช่วงหลังๆ (เข้เกียจไปแกะ TCP/IP Packet )
นั่นคือ AutoIt นั่นเอง

AutoIt เป็นเหมือน Visual Basic Script ( .vbs) ที่ทำงานอยู่บน Window
แต่ข้อดีของมันคือ API ที่ใช้ในการเขียนนั้น ไม่ซับซ้อนเท่า VBS
และมี COM Wrapper มาใ้ห้เลย ... แถมยังทำเป็น .exe ไฟล์ มาให้ได้ด้วย ... สะดวกมาก

ตัวอย่างชุดคำสั่งที่ทำใน AutoIt

if WinExists("POC - server") Then
   WinClose("POC - server")
EndIf
Sleep ( 3000 )
Run("run.bat")

จะเห็นได้ว่า ชุดคำสั่ง ไม่ได้ยากเกินการเขียน VB6 ซักเท่าไหร่ ...
ทั้งนี้อยู่ที่ skill programming  + idea มีเยอะน้อยแค่ไหนครับ :)

การใช้ AutoIt เหมาะสำหรับการทำงานที่ไม่ซับซ้อนมาก
หรือพูดง่ายๆ ว่าทำ automate task สั้นๆ จำพวก จับเวลาการรันโปรแกรม ตั้งแต่ เริ่ม ยัน จบ 
หรือแม้แต่การอ่านสีจากหน้าจอ ก็สามารถทำได้เช่นกัน ซึ่งอยู่ในรูปแบบของ script
ที่พร้อมแก้ไขได้ทันที อีกทั้งยังสามารถ distribute ไปในรูปแบบของ exe ได้ ตามที่ต้องการ
(เขียน virus กากส์ๆ ได้นั่นเอง) ได้สะดวกมาก แต่ถ้าหากอยากใช้ในระดับ advanced
ก็จำเป็นที่จะต้องมี skill programming เกี่ยวกับ win32 หรือ window เยอะพอสมควร
เพื่อให้สามารถเข้าถึง API ได้แบบไม่งงๆ

ก็เป็น app ที่ค่อนข้างเก่า แต่ก็มีประโยชน์ครับ tutorial ก็เยอะแยะ
สามารถตามไปอ่านได้ ตาม list ข้างล่างครับ :)



Related Posts Plugin for WordPress, Blogger...