วันอังคารที่ 12 กุมภาพันธ์ พ.ศ. 2556

Delete Key , Value & Value data in registry with Notepad or Wordpad(File.reg):ลบ Key , Value และ Value data ใน registry ด้วย Notepad หรือ Wordpad(File.reg):Basic Registry Page 7.


 

1.True File & Directory of Registry in Windows System & Registry Component 2. 5 Root key in Registry
3. Value format in Registry & how to write Value data each type. 4. How to use Menu function & Shortcut key in registry Editor
5. Create & editing Registry with Notepad or Wordpad(Create File.reg) 6. Writing Value & Value data in file.reg with Notepad or WordPad
7. Delete Key , Value & Value data in registry with Notepad or Wordpad(File.reg) 8. Notepad WordPad : Toy or Magic? (Review&Info Editor Software)

Basic Registry Page 7.


Delete Key , Value & Value data in registry with Notepad or Wordpad(File.reg)

ลบ Key , Value และ Value data ใน registry ด้วย Notepad หรือ Wordpad(File.reg)




Delete Key , Value & Value data in registry with Notepad or Wordpad(File.reg)



ถ้า คุณยังไม่มีพื้นฐานการสร้าง File.reg ด้วยโปรแกรม Notepad ผมแนะนำให้เริ่มต้นอ่านจาก Page 5,6 มาก่อนจะเข้าใจได้ดีกว่า

Page นี้จะเป็นการสร้าง File.reg ขึ้นมาเพื่อลบ Key , Value และ Value data ใน registry และ ถ้าคุณจะทดลองทำตาม ขอแนะนำว่าให้ สร้าง Restore point ใน Systems Restore กันเน่าไว้ก่อนด้วยนะครับ

กฎ 5.ข้อ ของ Registry ที่คุณควรรู้ (ทบทวนจาก Page 5.)

1. คุณไม่สามารถเปลี่ยนชื่อ หรือ ลบ Rootkey ทั้ง5 ของ Registry ได้
2. คุณไม่สามารถเปลี่ยนชื่อ หรือ ลบ String ที่ชื่อ(Default)ที่โปรแกรมสร้างขึ้นมาให้ในทุก Key ได้ แต่สามารถตั้งค่า และ เปลี่ยนแปลงแก้ไข Value data ได้
3. ในการสร้าง key ย่อยขึ้นมาใหม่ที่อยู่ระดับ(Level)เดียวกัน คุณไม่สามารถตั้งชื่อ Key ให้เหมือนกันได้ แต่ถ้าต่างระดับ(คนละคีย์) หรือ ต่าง Root key สามารถทำได้
4. ใน Key เดียวกัน คุณสามารถสร้าง Value กี่ชนิด, กี่ค่าก็ได้ แต่คุณไม่สามารถตั้งชื่อให้เหมือนกันได้ แม้ว่า จะเป็น Value ที่ต่างชนิดกันก็ตาม แต่ถ้าต่าง Key สามารถทำได้
5. *** บาง Key และ บาง Value จะติดค่า Permissions ซึ่งค่า Permissions นี้สามารถแก้ไขได้ แต่ถ้า Key และ Value นั้น มีความสำคัญต่อระบบ ถึงแม้คุณจะเปลี่ยนค่า Permissions ได้ หรือ ไม่ได้ก็ตาม คุณก็ไม่สามารถแก้ไข หรือ ลบ ได้เหมือนกัน แต่ทั้งนี้ไม่รวมถึง Key ย่อยถัดลงไป ตรงนี้ต้องใช้ความรอบคอบเป็นพิเศษ แต่ถ้าคุณยังยืนยันจะแก้ไขจริงๆ คุณต้อง Logon เข้าไปแก้ไขในชื่อadmin[4] Administrator และถ้าคุณยังแก้ไขใน Admin Account ไม่ได้อีก, นั่นหมายความว่าการตั้งค่าของ Registryนั้นๆต้องมีความสำคัญต่อระบบมาก หรือระบบของคุณอาจถูก Malware เล่นงานก็เป็นไปได้เหมือนกัน (ตรงนี้มีหลายกรณี)
ในบทความนี้ผมจะใช้ Wordpad ครับ เพราะย่อ, ขยาย, ปรับสีข้อความเวลาแค็ปรูปได้ดีกว่า ส่วนคุณผู้อ่านอย่าจะใช้โปรแกรม Editor ตัวไหนก็ตามสะดวก

Delete key in Registry with file.reg

ผมทดลองสร้าง Keyใหม่ขึ้นมาตามนี้ครับ HKEY_CLASSES_ROOT\TEST_DELETE จากนั้นก็ได้สร้าง Key ย่อย ถัดลงไปอีก 2 Key จากนั้นตั้งชื่อว่าMyKeyLevel-1 และ MyKey Level-2 ตามลำดับ ดูตัวอย่างจาก (Pic 1.)

A. ลบ Key ใน Registry ด้วย File.reg

วิธีการลบ Key : ให้คุณใส่ เครื่องหมายลบ หรือ เครื่องหมาย Score( - )ที่ด้านหน้า ของ ตำแหน่ง Key ที่คุณต้องการจะลบจากนั้นก็ Save เป็น File.reg > Double click เพื่อ Add reg Key ย่อยตัวสุดท้ายที่ระบุ จะถูกลบไปเอง

 

จาก Pic1. : ถ้าผมเขียน Script เป็น.....
1. [-HKEY_CLASSES_ROOT\TEST_DELETE\MyKeyLevel-1]  ความหมายคือ ให้ลบ Key ที่ชื่อ MyKeyLevel-1 รวมถึง Key ย่อยที่ถัดลงไปทั้งหมดด้วย ในที่นี้ก็คือ MyKey Level-2 .....แต่ถ้าผมเขียนสคลิป เป็น...
2. [-HKEY_CLASSES_ROOT\TEST_DELETE\MyKeyLevel-1\MyKey Level-2]  ความหมายคือ ให้ลบเฉพาะ MyKeyLevel-2 ซึ่งเป็นเป็น Key สุดท้ายที่ระบุ และ MyKeyLevel-1 ก็ยังอ

 

2Delete value & value data with File.reg

 

B. ลบ Value ใน Registry ด้วย File.reg

- Value ทุกชนิดใน Registrry จะมีวิธีการลบที่เหมือนกันหมดครับ เหตุผลก็เป็นไปตามกฏข้อ 4. (Value ที่อยู่ใน Key เดียวกันจะมีชื่อซ้ำกันไม่ได้) เพราะฉนั้นเราจึงไม่ต้องระบุชนิดของ Value ที่เราจะลบ วิธีการก็ตามนี้ครับ
ให้คุณระบุ"ชื่อ Value" ที่อยู่ในเเครื่องหมายคำพูดจากนั้น ตามด้วยเครื่องหมาย =- ("Value Name"=-)
- ในกรณีของ String ที่ชื่อ(Default) จะไม่สามารถลบได้ แต่จะให้ผลลัพธ์(Output)ที่แตกต่างออกไป เหตุผลก็เป็นไปตามกฏข้อ 2.(อ่านรายละเอียดที่ข้อ D.)


Delete Value data with file.reg
Delete Value data with file.reg

 

 

 

C. ลบเฉพาะการตั้งค่าของ Value data ด้วย File.reg

1. จาก (Pic 3.) ผมทดลองสร้าง New Value ขึ้นมาอย่างละ 1ค่า
2. ถ้าต้องการลบ เฉพาะการตั้งค่าใน Vale data ผมต้องเขียน Script ของ Value แต่ละชนิดตามนี้

"My BINARY"=hex:
"My STRING"=""
"My MUTISTRING"=hex(7):
"My EXPAN_STRING"=hex(2):
"My DWORD"=dword:00000000
"My QWORD"=
hex(b):
3. ถ้าต้องการลบ Value ทุกตัว ก็ให้ใส่เครื่องหมาย - ต่อท้ายเครื่องหมาย = แบบเดียวกับที่ผมอธิบายในข้อ B. ("Value Name"=-)




 

Delete Value data or Restore string(default)

 

D. คืนค่า และ ลบ Value data ของ String ที่ชื่อ (Default)

ดูตัวอย่าง(Pic 4.) ดูผิงเผิน วิธีการจะคล้ายกับการลบ String Value ที่เราสร้างขึ้นมาเอง แต่ถ้าอ้างตามกฎข้อ 2. ที่ผมเขียนไว้ข้างบนแล้ว การลบจะมีความหมายตามนี้ครับ
1. ผมทดลองใส่ค่า Valudata ของ String(Default) เป็น 1234
2. ถ้าผมเขียน Code เป็น @=- จะเป็นการ Restore(คืนค่า) ที่ช่อง Data Column จะกลับมาเป็น(Value not set) (หมายเลข 4.)
3. ถ้าผมเขียน Code เป็น @="" จะเป็นเพียงการลบค่าใน Value data ออกไปเท่านั้นครับ และ ที่ช่อง Data Column จะไม่แลดงข้อความอะไรเลย(หมายเลข 5.)
- และถ้าคุณทดลองลบการตั้งค่า ในช่อง Value data ของ String ที่ชื่อ (Default) จากข้างในโปรแกรม regedit ผลลัพธ์ที่ได้ ที่ช่อง Data Column ก็จะว่างแบบหมายเลข 5. เหมือนกัน



5Export file.reg
5Example: How to adaptation file.reg

หลักการทำงานของ Reg script กับ การพลิกแพลง เมื่อใช้งานจริง

- สคลิปที่คุณเห็นใน File.reg นั้น มันจะทำงานตามลำดับจากคำสั่งแรก ไล่ลงมาเรื่อยๆจนถึงคำสั่งสุดท้าย(บรรทัดสุดท้าย) หลักการมีอยู่แค่นี้ครับ ...แล้วบอกทำไมเนี่ย?
- ในการใช้งานจริง การควบคุม หรือ แก้ไข Registry ด้วย File.reg นั้น ส่วนใหญ่เรามักจะแก้ไขจาก File.reg ที่ได้จากการ Export มากกว่า และ เมื่อคุณรู้ถึงหลักการทำงานของ Reg script แล้ว คุณไม่จำเป็นต้องทำตามลูกสูตรแบบเปะๆ ในแบบที่ผมอธิบายมาทั้งหมดเสมอไป
มาดูตัวอย่างกัน(Pic 5.) ผมจะลบทุก Value ใน MyKeyLevel-1 โดยใช้คำสั่งลบ Key (แบบที่ผมอธิบายไว้ในข้อ A.)
1. ที่ MyKeyLevel-1 ผมคลิกขวา เลือก > Export ก็จะได้ File.reg แบบ หมายเลข 2.
3. จากนั้นผมใส่เครื่องหมาย - ด้านหน้าตำแหน่ง Key อย่างที่คุณเห็นในหมายเลข 3.
4. ผมทดลอง Import File.reg ที่ได้จากการแก้ไขในข้อ 3. ผลลัพธ์ที่ได้จะไม่ใช่การลบ MyKeyLevel-1 แต่จะเป็นการลบ Value ทั้งหมดที่มีอยู่ใน MyKeyLevel-1 แทน

คุณลองนึกสิครับว่า เหตุผลมันเป็นเพราะอะไร?...ถ้าตอบไม่ได้........ผมจะเฉลยซ้ำอีกครั้งก็ได้ว่า...เพราะ File.reg ทำงานตามลำดับ จากคำสั่งแรก จากนั้นก็ต่อไปที่คำสั่ง 2, 3, 4...จนจบบรรทัดสุดท้าย อย่างที่ผมบอกตั้งแต่ต้นไงครับ ดูหมายเลข 3.

- คำสั่งแรก(3.1) : เป็นคำสั่งลบ MyKeyLevel-1 เพราะฉนั้น Value และ Value data ที่อยู่ใน MyKeyLevel-1 ก็จะถูกลบตามไปด้วย จากนั้น File.reg ก็จะทำงานต่อไปในคำสั่งที่สอง 

- คำสั่งที่สอง (3.2) ความหมายก็คือ : ให้สร้าง MyKey Level-2(พร้อมกับสร้างReg_String ที่ชื่อ My_STRING) ให้อยู่ถัดลงมาจาก MyKey Level-1 อีกชั้น ผลลัพธ์ก็คือ MyKey Level-1 ถูกสร้างขึ้นมาอีกครั้งด้วยคำสั่งที่สองนี่เอง คุณสามารถพลิกแพลงการใช้งาน File.regไปได้มากกว่านี้ ครับ ที่ผมยกตัวอย่างมา เป็นเพียงส่วนหนึ่งเท่านั้นเอง
The Hunchback of NotreDame Funny animation.gif





ไม่มีความคิดเห็น :