Clicky

tips and tricks | suksit dot com

tips and tricks

How to Monitor Process on Windows Using Batch File

พอดีเมื่ออาทิตย์ที่แล้วได้โจทย์มาว่า ต้องการตรวจสอบว่ามี process บาง process รันอยู่บนวินโดวส์หรือเปล่า ถ้าไม่มี ให้ส่งเสียง alarm เตือน

ทีแรกก็คิดว่าใช้พวก Visual Basic เขียนโปรแกรมเล็กๆ ง่ายๆ ก็ใช้ได้ แต่ด้วยความที่ไม่มี Visual Studio บวกกับจำได้ว่าวินโดวส์มันมีคำสั่ง taskkill เลยคิดว่าน่าจะมีคำสั่งที่ใช้ตรวจสอบรายการ process ที่รันอยู่ในระบบด้วยเหมือนกัน

เปิด Command Prompt แล้วพิมพ์

help

ก็พบว่าคำสั่งที่ต้องการ มันอยู่ก่อนหน้าคำสั่ง TASKKILL นั่นเอง คำสั่งนั้นก็คือ TASKLIST

จากนั้นก็ใช้ความรู้เก่า + คิดอะไรไม่ออกถามกู(gle) ได้ออกมาเป็น batch file ง่ายๆ แบบนี้ สมมติว่าต้องการตรวจสอบว่าโปรแกรม Notepad รันอยู่หรือไม่ ถ้าไม่รันให้เรียกมันขึ้นมา ทำได้แบบนี้

Read the rest of this entry »

Hiding Virtual Network Adapter in Windows 7

ถ้าใครใช้โปรแกรมประเภท virtual machine เช่น VMWare หรือ VirtualBox จะพบว่าตอนติดตั้งเสร็จ มันจะสร้าง virtual network adapter ขึ้นมาให้เรา ตัวอย่างเช่น VirtualBox จะสร้าง adapter ที่ชื่อว่า "VirtualBox Host-Only Network"

ซึ่งวินโดวส์ 7 จะเห็นว่าเรากำลัง connect กับอีกเครือข่ายหนึ่งที่เป็น public network อยู่ และมันจะแสดงชื่อว่าเป็น unidentified network เวลาคลิกที่ไอคอนเน็ตเวิร์กใน notification area จะเห็นประมาณนี้ ทำให้ดูแล้วงงๆ ว่าเฮ้ย เราไปต่อกับเน็ตเวิร์กที่ไหนอีกเนี่ย

Windows 7 Network Connections

Read the rest of this entry »

Using Drush on Windows with Cygwin

What is Drush?

หนึ่งในเครื่องมือที่ขาดไม่ได้เวลาทำงานกับ Drupal ก็คือ Drush ที่ทำให้ทำงานหลายๆ อย่างได้ด้วยการใช้ command line หลักๆ ก็เช่น ดาวน์โหลดและติดตั้งโมดูล/ธีม, เคลียร์ cache, รัน update.php, รัน cron, ดูค่าในตาราง variables ฯลฯ

Why Drush?

ความสามารถของ Drush ที่ใช้บ่อยที่สุดก็น่าจะเป็นตอนติดตั้งโมดูล/ธีม นี่แหละ รันคำสั่งบรรทัดเดียว มันจะดาวน์โหลดแพ็กเกจและแตกไฟล์ให้เสร็จเรียบร้อย สมมติเราต้องการติดตั้งโมดูลซัก 5-6 ตัว ขั้นตอนปกติที่จะต้องทำก็คือ

  • ไปที่ drupal.org
  • ค้นหาโมดูลที่ต้องการ (ถ้าจะให้เร็วกว่านั้น แนะนำให้ค้นหาโมดูลด้วย Firefox quick search)
  • ดาวน์โหลดแพ็กเกจติดตั้งของแต่ละโมดูล
  • แตกแพ็กเกจไปไว้ในไดเร็กทอรี sites/all/modules
  • ไปที่ http://example.com/admin/build/modules
  • คลิกเลือกโมดูลที่ต้องการเปิดใช้งาน
  • กดปุ่ม Save configuration

ในขณะที่ Drush สามารถทำได้โดยพิมพ์คำสั่งแค่ 3 บรรทัด

$ cd /cygdrive/d/www/my_drupal_site
$ drush dl admin admin_menu devel markdown cck views
$ drush en admin admin_menu devel markdown cck views

โฆษณาเสร็จแล้ว มาเข้าเรื่องตามหัวข้อบล็อกกันดีกว่า

Read the rest of this entry »

Windows 7 Sticky Notes

พยายามหาโปรแกรมประเภท sticky note หรือ to-do list บนวินโดวส์ แต่ยังไม่เจอที่ถูกใจซักที เลยลองใช้ Sticky Notes ของ Windows 7 แก้ขัดไปก่อน สิ่งแรกที่พบเมื่อเริ่มใช้งานก็คือ "ทำไมเปลี่ยนฟอนต์ไม่ได้ฟระ" คือฟอนต์ภาษาอังกฤษมันก็สวยดี แต่ฟอนต์ภาษาไทยมันมาตรฐานไปหน่อย ถ้าพิมพ์สองภาษาในโน๊ตอันเดียวแล้วมันจะดูขัดๆ เลยแก้ปัญหาด้วยการพิมพ์มันเป็นภาษาอังกฤษทั้งหมดซะ -_-a

ลองคลิกขวาที่โน๊ตดูก็พบว่ามีแค่ตัวเลือกให้เปลี่ยนสีกระดาษ ก็ยังดีกว่าไม่มีอะไรเลย... ก่อนจะฟันธงว่ามันห่วย เลยลอง highlight ข้อความ แล้วกด Ctrl + B ปรากฏว่ามันเปลี่ยนเป็นตัวหนาให้ อ้าวเฮ้ย! จริงๆ ก็เหมือนจะฉลาดนิ เลยลองกด shortcut สำหรับฟอร์แมตข้อความใน MS Word ดูหลายๆ ตัว ก็พบว่ามีบางอันใช้ได้กับ Sticky Notes ด้วย เท่าที่เจอคือ

Read the rest of this entry »

PHPExcel

ช่วงสัปดาห์ที่ผ่านมา มีโจทย์ให้สร้างเว็บเพื่อเก็บข้อมูลรายงานที่ปกติจะอยู่ในรูปแบบไฟล์ Excel ก็โอเค อยากได้ก็จัดให้ วิธีการที่ใช้ก็คือสร้าง textbox เป็นร้อยไปใส่ใน <table> กันดื้อๆ นี่แหละ ซึ่งก็เก็บข้อมูลได้ไม่มีปัญหาอะไร (แต่แอบด่าอยู่ในใจ ทำไมไม่ใช้พวก SharePoint อะไรไปเลยฟระ)

มาเดือดร้อนตอนแสดงผล เนื่องจากต้องสามารถพรินท์ออกมาเป็นรายงานได้ด้วย ซึ่งรายงานแต่ละหน้าก็ดันหน้าตาไม่เหมือนกันอีก คิดไปคิดมาถ้าจะทำเป็น template ก็ต้องทำเกือบๆ 50 ไฟล์ =.=

เลยวกกลับมาหา Excel เพราะแต่ก่อนจำได้ว่าเคยสร้างไฟล์ Excel ด้วย PHP แต่ตอนนั้นเป็นการสร้างไฟล์เปล่าๆ ขึ้นมาใหม่ แล้วใส่ข้อมูลลงไป ส่วนคราวนี้จะต่างไปเล็กน้อย เพราะต้องอ่านไฟล์ template ที่แบ่งหน้าและเซ็ต print area ไว้เรียบร้อยแล้วเข้ามาก่อน จากนั้นก็กรอกข้อมูล แล้วค่อยเซฟเป็นรายงาน

google อยู่ครึ่งวันก็ไม่พบตัวเลือกเจ๋งๆ ซักที เพราะส่วนใหญ่จะเป็นไลบรารี่สำหรับสร้างไฟล์ Excel ขึ้นมาใหม่ ไม่สามารถอ่าน/เขียนไฟล์ที่มีอยู่แล้วได้ จนกระทั่งมาเจอ PHPExcel ก็พบว่า โอ้ววว ตัวนี้แหละ ใช่เลย!

Read the rest of this entry »