ปัดกวาด Startup ใน Msconfig

July 15th, 2009

ที่มาที่ไปของเรื่องนี้คือว่าในการทำงานนั้นหลายต่อ หลายครั้งที่ผมไปแก้เครื่อง User ซึ่งก็จะมีทั้งเรื่องของไวรัสและตัวผู้ใช้เองลงโปรแกรมอะไรต่ออะไรมากมาย ซึ่งมีการโหลดขึ้นมาพร้อมๆกับ Windows ซึ่งทุกคนคงเข้าใจดีว่าที่ผมพูดถึงคือ Startup ซึ่งมีทั้งที่เรียกจาก Start => Programs => Startup และโปรแกรมที่มีการเรียกจากใน Registry ซึ่งเราสามารถที่จะดูได้โดยเรียกตัว Msconfig จาก Start => Run พิมพ์ Msconfig แ้ล้ว OK ทาง Tab Startup ด้านขวาสุด เราก็จะเห็นตัวโปรแกรมที่เรียกขึ้นมาพร้อมๆกับ Windows มากมาย ในส่วนนี้ผมคงไม่ลงลึกนะครับ เหมาเอาว่าทุกคนน่าจะรู้จักดีแล้ว
เรามาเข้าปัญหากันเลยดีกว่า ปัญหาก็คือว่าหลายต่อหลายครั้งที่เราไม่ต้องการให้โปรแกรมบางตัวโหลดขึ้นมา ในตอนที่เข้า Windows ซึ่งอาจจะเพราะเป็นตัวไวรัส หรือเป็นโปรแกรมที่เราไม่ได้ใช้แล้ว ผมก็ใช้วิธีเหมือนที่ทุกๆคนทำล่ะครับคือไปเอาเครื่องหมายถูกหน้าตัวที่ไม่ ต้องการออก เพราะบางตัวมันเป็นซากของไวรัส และบางตัวก็เป็นโปรแกรมที่ไม่เกี่ยวข้องกับการทำงานและทำให้เครื่องช้า

ปัญหานี่ก็จะแบ่งเป็น 2 เรื่องครับ เรื่่องแรกก็คือก็คือว่าเมื่อมีแบบนี้หลายๆตัวเข้าถึงแม้ว่าเราจะเอาเครื่อง หมายถูกออกแล้วแต่เจ้าชื่อมันก็ยังอยู่เกะกะสายตาทำให้เวลาเข้าไปใน Msconfig แล้วมันตาลายครับ คือมีทั้งตัวที่ยังใช้และตัวที่ไม่ใช้แล้ว และอีกปัญหาหนึ่งคือเมื่อเรามีการเอาเครื่องหมายถูกออกแล้วเมื่อเข้า Windows ครั้งต่อไปเจ้า Windows ก้จะขึ้นหน้าต่างฟ้องขึ้นมาครับว่ามีการเปลี่ยนแปลงเกิดขึ้น ซึ่งตรงนี้เราสามารถที่จะติ๊กถูกเพื่อบอกว่าทราบแล้วคราวหน้าไม่ต้องเตือน แล้วนะ แต่สำหรับในการทำงานของผมบางครั้ง User ทำงานค้างอยู่ไม่สามารถที่จะ Boot เครื่องใหม่เพื่อให้มันฟ้องแล้วค่อยติ๊กถูกได้ ครั้นจะทิ้งไว้ให้มันฟ้องหลังจาก User ทำการ Boot เครื่องใหม่เองก็เจอปัญหาบ่อยๆว่า User แจ้งตามหลังมาว่ามีปัญหา Windows ขึ้นหน้าต่างอะไรมาก็ไม่รู้ทุกครั้งที่เข้า Windows เลย(ก็แล้วทำไมไม่ติ๊กถูกล่ะจะได้ไม่ต้องเตือนทุกครั้ง) จึงเป็นที่มาของการศึกษาหาทางแก้ไขเรื่องนี้อย่างจริงจัง และได้พบทางออกที่ดีครับ
หลังจากเกริ่นมาซะยาวมากๆๆ มาเข้าเนื้อๆกันเลยดีกว่า เริ่มจากหน้าจอแรกเลยครับซึ่งเป็นหน้าจอของ Msconfig ที่ผมทำเพื่อยกตัวอย่างให้เห็นว่ามีโปรแกรมที่เราไม่ต้องการอยู่จำนวนหนึ่ง และได้ยกเลิกโดยทำการเอาเครื่องหมายถูกด้านหน้าออกไปแล้ว จะเห็นว่ามันยังอยู่ครับทำให้ดูแล้วเกะกะและอาจจะทำให้ตาลายได้ถ้ามีมากๆ

อย่างที่บอกไว้ข้างต้นครับว่าหลังจากเราเอาเครื่อง หมายถูกออกแล้วเมื่อมีการเข้า Windows ครั้งต่อไปก้จะมีหน้าต่างเตือนขึ้นมาว่ามีการเปลี่ยนแปลงเกิดขึ้น ซึ่งถ้าเราไม่ต้องการให้มันเตือนซ้ำอีกก็ให้ทำเครื่องหมายถูกตามที่ผมวงไว้ ในรูปนะครับ

คราวนี้มาดูการแก้ปัญหากันครับ สำหรับปัญหาแรกที่ชื่อมันยังอยู่รบกวนหัวใจและสายตาถึงแม้ว่าเราจะไม่ต้อง การมันแล้ว สำหรับชื่อในส่วนที่เราเอาเครื่องหมายถูกออกไปนั้นมันจะเก็บไว้ใน Registry ซึ่งเราต้องตามไปลบมันในนั้นครับ มันจะได้ไม่มารบกวนสายตาเราอีก ถึงตรงนี้ขอเตือนว่าให้แก้ไขด้วยความระมัดระวังนะครับ เพราะการแก้ไข Registry ที่ผิดพลาดอาจจะทำให้ Windows มีปัญหาได้ครับ สำหรับส่วนของ Registry ที่เราจะต้องเข้าไปจัดการลบทิ้งจะอยู่ใน
HKEY_LOCAL_MACHINESOFTWAREMicrosoftShared ToolsMSConfig ซึ่งจากในรูปจะเห็นว่ามี 2 Key คือ startupfolder และ startupreg ครับ สำหรับข้อแตกต่างของทั้ง 2 Key ก็คือโปรแกรมที่เรียกขึ้นมาจาก Start => Programs => Startup ก็จะเก็บอยู่ใน startupfolder ส่วนโปรแกรมที่มีการเรียกจากใน Registry ก็จะเก็บไว้ใน startupreg ครับ ถ้าเราแตกทั้ง 2 Key ออกมาดูก็จะเห็นว่าล้วนแล้วแต่เป็นชื่อโปรแกรมที่เราเอาเครื่องหมายถูกออกใน ขั้นตอนแรกนั่นล่ะครับ ซึ่งในการลบนั้นเราสามารถลบทิ้งทั้ง startupfolder และ startupreg ซึ่งผมทำแถบสีฟ้าไว้ได้เลยครับแค่นี้เจ้าชื่อพวกนั้นก็จะหายไปจาก Msconfig แล้วล่ะครับ ลองดูรูปประกอบนะครับ


คราวนี้มาดูปัญหาที่ 2 กันคือถึงแม้ว่าเราจะเอาชื่อมันออกไปแล้วแต่เมื่อเข้า Windows ครั้งต่อไปมันก็จะยังขึ้นหน้าต่างมาฟ้องอีกว่ามีการเปลี่ยนแปลงเกิดขึ้น ซึ่งเราจะต้องเสียเวลามานั่งติ๊กถูกแล้ว Ok อีก มาดูวิธีการแก้ให้มันไม่ต้องฟ้องครับ สำหรับเจ้าตัวฟ้องนี้ Windows จะมีการสร้างไว้ใน Registry เช่นกันครับในส่วนของ HKEY_LOCAL_MACHINE
SOFTWAREMicrosoftWindowsCurrentVersionRun ซึ่งจะเห็นว่าเป็นที่เดียวกันกับที่ใช้เรียกโปรแกรมขึ้นมาตอนเข้า Windows ซึ่งเราเพิ่งเอาบางตัวออกไปนั่นล่ะครับนั่นล่ะครับ ลองดูที่ด้านขวามือในส่วนของ Name จะเห็นว่ามีตัว Msconfig เพิ่มเข้ามาครับ ถ้าเราไม่ต้องการให้มันเตือนก็ให้ลบบรรทัดที่ว่านี้ทิ้งไปได้เลยครับ เพียงเท่านี้ Windows ของเราก็จะหุบปากเงียบไม่ฟ้องอีกแล้วล่ะครับ ผมก็จะสบายใจไม่ต้องกังวลว่า User จะแจ้งตามหลังไปว่าเครื่องมีปัญหามีหน้าต่างอะไรไม่รู้เด้งขึ้นมาตอนเข้า Windows ครับ

***สำหรับคนที่ไม่อยากเสี่ยงกับการแก้ Registry ผมได้ทำตัว Ultra_Mscon ไว้จัดการในเรื่องนี้ให้ครับ เพราะจะมานั่งแก้ Registry ทีละเครื่องก็จะเป็นการเสียเวลาเลยทำตัวนี้มาเพื่อความสะดวกครับ***

ขอขอบคุณ http://www.dkdc-ultra.com ครับผมสำหรับเรื่องดีๆ

set classpath กรณีที่ต้องการใช้งาน jar file

July 15th, 2009

มาแชร์ความรู้กันครับ

Problem
ถ้าเราต้องการอ้างถึง jar file เพื่อใช้งานในโปรแกรมจาวา เราต้อง set classpath อย่างไร ?

Solution
ในกรณีที่โปรแกรมจาวาที่เราต้องการใช้งานมีการใช้งาน class ที่อยู่ใน jar file เราจะต้อง set classpath โดยระบุถึง jar file เหล่านั้นด้วย โดย path ที่ระบุใน class path นั้น จะประกอบไปด้วย directory ที่ jar file นั้นอยู่และชื่อของ jar file นั้นด้วย อย่างเช่น ถ้า myjar.jar ที่เราต้องการใช้งานอยู่ใน directory d:\java\libs ในขณะที่ class file อื่น ๆ จะอยู่ใน d:\java\classes ถ้าเราต้องการ set classpath ให้รวมทั้งสองที่นี้ไว้ก็สามารถทำได้ โดยระบุ path ทั้งสองเข้าไว้ด้วยกัน อย่างเช่น

java -cp d:\java\libs\myjar.jar;d:\java\classes ClassName

จะเห็นว่าในการอ้างถึง jar file ที่ต้องการนั้น เราจะต้องระบุชื่อของ jar file นั้นด้วย นอกเหนือจาก directory ที่ jar file นั้นอยู่
สำหรับ platform ที่เป็น Unix (Solaris, Linux หรือ AIX) วิธีการ set classpath สำหรับ jar file ก็เหมือนกัน จะต่างกันก็เพียงแค่ path ใน Unix จะใช้ / แทน และแต่ล่ะ path จะถูกคั่นด้วยเครื่องหมาย : (colon) แทนที่จะเป็น ; (semi-colon) อย่างเช่น

java -cp /java/libs/myjar.jar;/java/classes

สมมุติว่า myjar.jar อยู่ใน directory /java/libs และ class file อื่น ๆ อยู่ใน directory /java/classes
ส่วนเรื่องลำดับของ path ที่ระบุไว้ใน class path นั้น ขึ้นกับว่าเราต้องการให้หา class จาก path ไหนก่อน ลำดับการค้นหา class นั้นจะทำจากซ้ายไปขวา ตามที่กำหนดไว้ใน class path อย่างเช่น ถ้าเราระบุ class path ตามตัวอย่างด้านบน class ใน myjar.jar จะถูกเรียกใช้ก่อน class ที่อยู่ใน directory classes ในกรณีที่เรียกใช้ class ชื่อเดียวกัน เป็นต้น

Alt+F4 กับ Ctrl+F4 ต่างกันอย่างไร

July 13th, 2009

เอามาให้อ่านกันครับ^^

ถาม: ปกติเรามักจะใช้ Alt+F4 เพื่อปิดหน้าต่างโปรแกรมที่ใช้งานอยู่บน Windows แต่ได้ยินเพื่อนบอกว่า มันมี Ctrl+F4 ด้วยนะ ซึ่งผมก็ไม่แน่ใจเหมือนกันว่า มันมีไว้ทำอะไร? ลองกดดูแล้วไม่เห็นจะเกิดอะไรขึ้นเลย ว่าแต่ผมกำลังโดนเพื่อนอำเล่นอยู่หรือเปล่าครับ?

ตอบ: ก่อนอื่นต้อบอกว่า เพื่อนของคุณไม่ได้อำเล่นหรอกครับ Ctrl+F4 มีจริงๆ อย่างไรก็ดี ผมขอถือโอกาสนี้แจกแจงให้ทราบถึงแนวคิด และความแตกต่างของการใช้งานชุดปุ่มควบคุมทั้งสองไปพร้อมกันเลยดีกว่านะครับ

Alt+F4 เมื่อผู้ใช้กดปุ่มนี้พร้อมกัน จะเป็นการสั่งปิดหน้าต่างโปรแกรมที่ใช้งานอยู่ในขณะนั้น ความหมายของมันจะเหมือนกับการใช้เมาส์คลิกที่ปุ่มกากบาทสีแดงบนมุมขวาของหน้าต่างโปรแกรมนั่นเอง มักจะใช้บ่อยๆ เวลาที่มือไม่ได้อยู่บนเมาส์ เพราะมันคล่องตัวกว่า

Alt กับ Ctrl ใน Windows แต่ก่อนที่ผมจะพูดถึง Ctrl+F4 ว่ามันทำอะไร ขออธิบายแนวคิดของการใช้งานปุ่มทั้งสองนี้ก่อน ซึ่งน่าจะเป็นประโยชน์กับคุณผู้อ่านในวงกว้าง ความแตกต่างระหว่าง ATL กับ CTRL ก็คือ ถ้าเป็น ALT จะหมายถึงการควบคุมในระดับแอพพลิเคชัน ส่วน CTRL จะหมายถึงการควบคุมระดับ”ภายใน”แอพพลิเคชัน ยกตัวอย่างเช่น เวลาที่คุณกด Alt+TAB มันจะเป็นการสลับ(switch)การเลือกหน้าต่างแอพพลิเคชันต่างๆ ที่เปิดใช้งานอยู่ในขณะนั้น แต่ถ้าเป็น CTRL+TAB จะเป็นสลับการเลือกหน้าต่างเอกสารที่อยู่ภายในแอพพลิเคชันที่กำลังใช้งาน เพื่อให้เห็นภาพอีกนิดนึ่ง เช่น การใช้ Ctrl+TAB ในบราวเซอร์ IE/Firefox/Chrome มันจะเป็นการสับเปลียนแท็บต่างๆ ที่อยู่”ภายใน”หน้าต่างโปรแกรมนั่นเอง คราวนี้คงจะเข้าใจความแตกต่างแล้วนะครับ

Ctrl+F4 หมายถึงการปิดเอกสารที่เปิดอยู่ภายในแอพพลิเคชันที่สนับสนุนการเปิดเอกสารได้หลายไฟล์ภายในโปรแกรม เช่น Word มันจะทำงานเหมือนกับการคลิกปุ่ม Xของหน้าต่างเอกสารที่อยู่ภายในโปรแกรมนั่นเอง (อยุ่ถัดลงมาจากปุ่มกากบาทสีแดงของหน้าต่างโปรแกรมนั้นๆ) แต่ถ้าเป็นในบราวเซอร์ IE/Firefox/Chrome ก็จะหมายถึงการปิดแท็บของหน้าเว็บที่คุณกำลังดูอยู่ในขณะนั้น

คลิกที่รูป เพื่อเอาโค้ดรูปนี้ไปแปะ

ความจริง Alt และ Ctrl ยังใช้งานร่วมกับปุ่มอื่นๆ สำหรับการทำหน้าที่เป็นคีย์ลัด(shortcut) ด้วย อย่างเช่น Alt+W ที่ใช้เปิดเมนู Window หรือ Alt+F เป็นเมนู File ของโปรแกรมที่ใช้งานนั้นๆ ในขณะที่หลายโปรแกรมจะยังคงใช้ Ctrl+W เพื่อปิดหน้าต่างเอกสารที่เปิดอยู่ภายในแอพพลิเคชัน หรือพูดง่ายๆ ก็คือ มันเหมือนกับกดปุ่ม Ctrl+F4 นั่นเอง ใครสะดวกใช้อันไหนก็ว่ากันไป ไม่ผิดกฎหมายครับ