Month: January 2014

เขียนโปรแกรมเปลี่ยนภาษาบนวินโดส์ด้วย AutoIT

Grave Accent (`) ผิดตรงไหน

  • ผมเชื่อว่าคนใช้วินโดส์ส่วนใหญ่เวลาตั้งปุ่มภาษา จะใช้คีย์ Grave Accent (`) แทนที่จะเป็น Alt + Shift หรือ Ctrl + Shift สำหรับผมแล้วเนื่องจากใช้แมคด้วย จึงคุ้นเคยกับการใช้คีย์ Alt + Space จนติดเป็นนิสัย เวลาใช้ลีนุกซ์ จึงตั้งคีย์เปลี่ยนภาษาเป็น Alt + Space ตามแมค ซึ่งในลีนุกซ์การตั้งค่าก็ไม่ใช่เรื่องยากเย็น การใช้ Grave Accent ผมว่าก็ไม่ได้ผิดตรงไหน แล้วแต่ความคุ้นเคย
  • แต่ในวินโดส์การตั้งคีย์ Alt + Space กลับเป็นเรื่องใหญ่เพราะ OS ไม่สนับสนุนคีย์นี้ แต่ในวินโดส์แปด กลับสามารถใช้คีย์ Win + Space ได้ แต่ไม่ถนัดเท่าเพราะ Alt + Space เวลากดใช้หัวแม่มือซ้ายกด Alt หัวแม่มือขวากด Space จะสะดวกมากกว่า ผมเคยค้นหาในอินเทอร์เน็ต  ดาวน์โหลดมาใช้งาน เมื่อล้างลงวินโดส์ใหม่ โปรแกรมหาย ไปค้นหาอีกครั้งไม่เจอแล้ว

AutoIt Script Language

  • ในที่สุดมาเจอโปรแกรมที่เป็นภาษาสคริปต์ ชื่อ AutoIT ไปดาวน์โหลดมาใช้ได้ฟรี ขนาดไม่ใหญ่ ใช้เวลาอ่านคู่มือประมาณครึ่งชั่วโมง ผมดาวน์โหลดโปรแกรมสคริปต์เปลี่ยนคีย์บอร์ดจากไหนจำไม่ได้แล้ว แล้วมาทำการแก้ไข จากโค๊ดด้านล่างไม่กี่บรรทัด ฟังก์ชั่น HotKeySet เมื่อผู้ใช้กด Alt และ Space พร้อมกันให้เรียกฟังก์ชั่น Change แล้วทำการแปลงคีย์เป็น Alt + Shift
;^ = Ctrl
;! = Alt
;# = WinKey (Meta)
;+ = Shift</code>

HotKeySet("!{Space}", "change") ;Registers Alt + Space

;Main loop
While 1
Sleep(100)
WEnd

;At Input language settings on windows
;Please select Alt + Shift
;Changes Keyboard Layout

Func change()
Send ("{ALTDOWN}") ;Hold down Alt
Sleep(50) ;Wait 100 milliseconds
Send("{LSHIFT}{ALTUP}") ;Press Left-Shift and release Alt
EndFunc

ตั้งคีย์บนวินโดส์ก่อน

  • ผมตั้งค่าการเปลี่ยนคีย์เป็น Alt + Shift ด้านซ้าย เราจะให้โปรแกรมสคริปย์ดักจับ Alt + Space เมื่อผู้ใช้กดแล้วเปลี่ยนเป็นคีย์ Alt + Shift ส่งต่อให้วินโดส์

switch_win

ติดตั้ง AutoIt และใช้งาน

  • ในชุดของ AutoIt จะมี SciTe Script Editor เปิดมาแล้วลอกโค๊ดด้านบนใส่

scite

  • ที่จริงสามารถรันโค๊ดได้จากเมนู Tools ถ้า build จะได้ไฟล์ exe ออกมา แต่จะไม่มีไอคอน การยัดไอคอนเข้าไปใน execute file ให้ใช้ Auto2Exe ที่มาด้วยกัน ผมเตรียมไฟล์ไอคอนด้วย เป็นรูปธงชาติไทย คลิก Convert จะได้โปรแกรม exe ที่มีไอคอนมาเรียบร้อย

auto2exe

พร้อมใช้งาน

  • ถ้าเป็นวินโดส์ 7 ทำการ copy โปรแกรมไฟล์ exe มาวางที่ “C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup” เมื่อวินโดส์บู๊ตมาอีกรอบก็พร้อมใช้งานครับ

notifications

ดาวน์โหลดโปรแกรม

  • ไม่อยากโปรแกรม สามารถดาวน์โหลดไปใช้งานได้ iSwitcher2.zip (4shared.com) หรือ iSwitcher2.zip (Hightail.com)