เทคนิคการรัน iMacro พร้อมกันหลาย Profile บน Firefox

เชื่อว่านาทีนี้คนที่อยู่ในวงการ IM ทุกคนคงเคยใช้ iMacro บน Firefox กันมาบ้างแล้วไม่มากก็น้อย

แต่การที่จะรัน iMacro พร้อมกันหลายๆ หน้าต่าง อาจจะดูเป็นเรื่องลึกลับสำหรับบางคน เนื่องจากการที่จะรันมาโครพร้อมๆ กันให้ปลอดภัยไม่มี error มันมีเรื่องยุ่งๆ ที่จะต้องเตรียมต้องเช็คมากกว่าการรันแบบบ้านๆ อยู่หลายอย่างเลยทีเดียว

เราลองมาดูกัน ว่าจะสิ่งที่จะต้องทำก่อนรัน มีอะไรบ้าง :

1. แยกโปรไฟล์ของ firefox ออกจากกัน

อย่างแรกสุด เราควรจะแยกการใช้ resource ของ firefox แต่ละตัวออกจากกันโดยเด็ดขาด ซึ่งเมื่อแยกแล้ว แต่ละ profile ก็จะเสมือนกับเป็น firefox คนละตัว เก็บข้อมูลแยกกันทั้งไฟล์ temporary และ cookie  สามารถลง plugin เพื่อใช้งานต่างกันในแต่ละโปรไฟล์

สามารถทำได้โดย คลิกขวาที่ไอคอน firefox, เลือก Properties,  เลือกแทป Shortcut และใส่ “-no-remote -P” ต่อท้ายเข้าไปในช่อง Target 

เมื่อเปิด firefox ขึ้นมาใหม่ก็จะเจอหน้าต่างให้เลือกโปรไฟล์ก่อนเสมอ สิ่งที่ต้องทำก็คือ  create profile ขึ้นมาใหม่ตามต้องการ และติดตั้ง imacro addon ลงไปในโปรไฟล์เหล่านั้น

imacro multiprofile firefox-1 

2. เมื่อ imacro มีการเขียนไฟล์เก็บลงเครื่อง

ถ้าหากว่ามาโครที่จะรันไม่มีการเขียนไฟล์ข้อมูลเก็บลงเครื่องเลย การทำตามขั้นตอนในข้อ 1. ถือว่าโอเคแล้ว  แต่ถ้าเกิดว่ามีการสั่งเขียนไฟล์ลงเมื่อไหร่ เราต้องมาดูกันว่ามันเป็นการ เขียนลงไฟล์เดียวกันหรือไม่   เพราะถ้าหากมาโครในแต่ละโปรไฟล์มีการเปิดไฟล์ขึ้นมาเขียนพร้อมกันเมื่อไหร่มันก็จะ error ทำให้มาโครหยุดทำงาน บางครั้งอาจถึงขั้นหน้าต่าง firefox ปิดหายไปซะดื้อๆ ก็เป็นได้

ดังนั้นสิ่งที่ต้องคือต้องให้แน่ใจว่าแต่ละมาโครที่รันอยู่ต้องไม่เขียนไฟล์ลงในไฟล์เดียวกันพร้อมๆ กัน

3. เมื่อต้องรันมาโครที่มีการใช้สคริปเข้าช่วย

เมื่อเราทำมาโครขั้นเทพขึ้นมาอีกหน่อย เราอาจจะต้องอาศัยการเขียนสคริปเข้ามาช่วยควบคุมการทำ loop หรือการเช็ค condition ต่างๆ ส่วนมากที่เห็นได้บ่อยที่สุดคือการใช้ javascript เข้าช่วย

ซึ่งตรงนี้จะมีปัญหาตามมาอีกคือ เมื่อเราใช้สคริปเข้าช่วย จะมีการสร้างไฟล์ #Current.iim  ขึ้นมาจากสคริปของเรา(เมื่อมีการใช้คำสั่ง iimPlay) ขึ้นใน default path ที่เซ็ตไว้ใน Options เพื่อรันมาโครในขณะนั้นๆ ให้โดยอัตโนมัดิ

ทีนี้ถ้าหากเรารันสคริปมาโครพร้อมกันหลายๆ ตัวก็จะมีการเขียนไฟล์ #Current.iim ทับกันและทำให้ผลการรันมีปัญหาขึ้นมาทันที หลายคนที่ไม่รู้ตรงจุดนี้ก็อาจจะเจอปัญหาที่ ค่าต่างๆ ของตัวแปรอาจจะไม่เป็นอย่างที่คิดเอาไว้ เนื่องจากว่ามาโครอีกตัวอาจจะทำการเซ็ตค่าอื่นลงในตัวแปรชื่อเดียวกันในตอนนั้นๆ

ตรงจุดนี้แก้ได้โดยการเซ็ตแยกให้แต่ละโปรไฟล์ใช้งาน folder ที่แตกต่างกันไปเลย โดยการเซ็ต Paths ในส่วนของ imacro option ตามรูป

 

สุดท้าย  หวังว่าคงพอจะได้ไอเดียที่จะนำเอาไปประยุกต์ใช้กันได้นะครับ ^_^

 

หน้านี้ติดอันดับคำว่า..

About ibass