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

Writing Value and Value data in file.reg with Notepad or WordPad : วิธีการเขียน Value และ กำหนด Value Data แต่ละชนิดใน File.reg (Basic Registry Page 6.)


 

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 6.


Writing Value & Value data in file.reg with Notepad or WordPad

วิธีการเขียน Value และ กำหนด Value Data แต่ละชนิดใน File.reg(Notepad,WordPad)


Writing Value & Value data in file.reg with Notepad or WordPad (Basic Registry Page 6.)

ถ้าคุณยังไม่มีพื้นฐานในการสร้าง File.reg ด้วย Notepad มาก่อนแล้วเปิดมาอ่านบทความนี้เป็น Page แรก แนะนำว่าควรเริ่มต้นอ่านจาก หลักการพื้นฐานการสร้าง Fie.reg ด้วย Notepad จาก Page 5 ก่อนดีกว่าครับ เพราะผมเขียนบทเป็นชุดเนื้อหาแต่ละหน้าจะเกี่ยวพันธ์กัน
- คุณสามารถ ใช้ Wordpad แก้ไข หรือ สร้าง File.reg แทน Notepad ก็ได้ เพราะ WordPad ก็เป็นอีกหนึ่งโปรแกรม ที่มีคุณสมบัติเป็นโปรแกรม Editor
- วิธี Save Code หรือ ข้อความจาก Notepad หรือ WordPad ให้เป็น File.reg คุณต้องพิมพ์ .reg ต่อท้ายชื่อ File เองครับ

รูปแบบโดยรวมในการสร้าง File.reg

ไม่ว่าคุณจะสร้าง Value แบบไหนก็ตาม ชื่อของ Value ทุกชนิด ยกเว้น String Value ที่ชื่อ(Default)"ต้องอยู่ในเครื่องหมายคำพูดเสมอ"("Value Name") จากนั้นตามด้วยเครื่องหมาย = และ ค่าของ Value data

วิธีการเขียน Value และ กำหนด Value Data แต่ละชนิดใน File.reg ที่สร้างจาก Notepad



 Create Value Data(Default) StringA. สร้าง REG String Value ด้วย Notepad

1. ผมขออธิบาย การตั้งค่า Value data ของ String Value ที่เป็นค่า (Default) ของ Key ที่สร้างขึ้นมาใหม่ ก่อนนะครับ
1.1 ถ้าดูจากมุมมองในโปรแกรม Regedit กฏของ Registry อย่างหนึ่งก็คือ ทุกครั้งเมื่อคุณสร้าง Key ขึ้นมาใหม่ โปรแกรมจะสร้าง String Value ขึ้นมาให้ 1 ค่า ซึ่งถือว่าเป็นค่า Default ของ Key นั้นๆ ค่านี้คุณสามารถ ใส่ค่า Value data หรือ เปลี่ยนแปลงค่า Value data ได้ตามความต้องการ แต่คุณไม่สามารถเปลี่ยนชื่อ จาก (Default) ให้เป็นอย่างอื่นได้
1.2 จากข้อ 1.1 ถ้าคุณต้องการกำหนด หรือ แก้ไข Value data ของ String ที่ชื่อ Defult ( String Value ที่โปรแกรมสร้างขึ้นมาให้เอง) ก็ให้คุณใส่เครื่องหมาย @= จากนั้นตามด้วยค่า Value data ที่อยู่ในเครื่องหมายคำพูด (@= "Value data")
* ดูตัวอย่างเปรียบเทียบจาก Pic 1. ครับ เป็น Key ผมทดลองสร้างขึ้นมาใหม่ ,ทั้ง 2 Key แตกต่างกันตรงที่
MyKey_Level1 : เป็นการสร้าง Key อย่างเดียวไม่ได้สร้าง Value อะไรขึ้นมาเลย แต่เมื่อทำการ Add Reg(Double click ที่ File.reg)โปรแกรมก็ได้สร้าง String ที่มีชื่อว่า(Default)ขึ้นมาเองโดยอัตโนมัติเหมือนกับที่เราเลือกคำสั่ง New Key ในโปรแกรม Registry
MyKey_Level2 : เป็นการใส่ค่า Value data ให้กับ String ที่ชื่อ(Default)ครับ

Create New String Value on file.reg with notepad



2. สร้าง REG _String Value ขึ้นมาใหม่ วิธีการตามนี้ครับ(Pic 2.)
2.1 หลังจากที่คุณระบุชื่อ Key ที่คุณจะสร้างขึ้นมาใหม่ตามบรรทัดที่ 3 แล้ว
2.2 บรรทัดที่ 4 (ดูตัวอย่าง Pic 1.) ให้คุณใส่ ชื่อของ String Value ในเครื่องหมายคำพูด("String Name")จากนั้นตามด้วยเครื่องหมาย = และ ด้านหลังของเครื่องหมาย = ให้ใส่ค่าของValue data ลงไปโดยให้อยู่ในเครื่องหมายคำพูดเหมือนกัน("Value Data")
2.3 ในกรณีที่ค่าของ String(Value data)เป็น Path ของ Folder หรือ File ให้คุณใส่เครื่อหมาย Backslash คั่น 2ตัว(Drive:\\Folder\\File)



 

Create DWORD (32bit) Value with notepadB. สร้าง REG DWORD (32bit) Value ด้วย Notepad

1. หลังจากที่คุณระบุชื่อ Key ที่คุณจะสร้างขึ้นมาใหม่ตามบรรทัดที่ 3 แล้ว(ดูตัวอย่าง Pic 3.)
2 บรรถัดลงมา ให้คุณใส่ ชื่อของ DWORD Value ในเครื่องหมายคำพูด("Value Name") จากนั้นตามด้วย เครื่องหมาย = และ ด้านหลังของเครื่องหมาย = ให้พิมพ์คำว่า dword:และตามด้วย Value data ที่คุณต้องการจะตั้งค่า(dwordColonValuedata)
3. ในการใส่ค่า Value data นั้นคุณต้องพิมพ์เป็นตัวเลขฐาน 16(Hexadecimal)ให้ครบ8ตัวครับ
- เลขฐาน16 หนึ่งตัว= 4bit ถ้าต้องการใส่ข้อมูลให้ถูกต้องตามหลักของ DWORD 32 bit เราจึงต้องใส่เป็น 8 ตัว (4x8=32)
- จากตัวอย่าง(Pic 3.) ถ้าผมต้องการใส่ข้อมูลเป็น 400 เมื่อผมสร้าง DWORD จาก Notepad จึงต้องเติมเลขศูนย์ข้างหน้าอีก 5 ตัวอย่างที่เห็น
4. ในการใช้งานจริง : การเขียนค่า Value data(DWORD)คุณไม่จำเป็นต้องเติมเลข 0 ข้างหน้าเพื่อให้ครบจำนวน 8 ตัวก็ได้เหตุผลก็เพราะว่า เลข 0 ที่เติมลงไปข้างหน้านั้นไม่มีความหมายอะไรเลย จากตัวอย่าง ถ้าผมต้องการตั้งค่า Value data เป็น 400 ผมจะพิมพ์ เฉพาะตัวเลข 400 ก็ได้เหมือนกัน

 

สร้าง REG BINARY, Multi String, Expandable String ,QWORD (64bit)ด้วย Notepad

การสร้างข้อมูลที่เหลือ ผมแนะนำว่าในการใช้งานจริงให้สร้างข้อมูลจากในโปรแกรม regedit จากนั้นใช้คำสั่ง Export ง่ายกว่ามาก เพราะ ข้อมูลทั้ง 4 ชนิดนี้ คุณต้องแปลงข้อมูลไม่ว่าจะเป็นตัวเลข หรือ อักษรที่คุณต้องการจะตั้งค่าในช่อง Value data ให้เป็นชุดตัวเลขฐาน 16 ก่อน และ ต้องพิมพ์ข้อมูลให้ถูกหลักกฎเกณฑ์ของการสร้างข้อมูลแต่ละประเภทด้วย ...ถึงแม้มันจะทำได้ แต่ เมื่อเทียบกับการ Export แล้วยุ่งยากเสียเวลาโดยใช่เหตุ(เอาเวลาไปดูสาวๆเต้นจ้ำบะใน YouTobe บันเทิงกว่าเยอะ..เชื่อสิ) ที่จะผมยกตัวอย่างให้คุณผู้อ่านได้เห็นก็เพื่อ ให้รู้ถึงที่มาที่ไปของการตั้งค่า ข้อมูลชนิดต่าางๆเท่านั้นครับ วิธีการโดยรวม ก็ประมาณนี้
- ถ้า Value data ที่คุณจะสร้างเป็น ตัวเลข ให้ใช้โปรแกรม Calculator(View • Programmer)ที่ติดมากับ Windows OS แปลงค่าให้เป็นเลขฐาน 16(ขอเรียกสั้นๆว่า Hex) ได้เลย
- แต่ถ้า Value data ที่คุณจะสร้าง "เป็นข้อความ" คุณต้องแปลงค่า(Converter)จากตัวอักษรให้เป็น ตัวเลขฐาน 16(Hex )ก่อน จากนั้นถึงจะใส่ชุดตัวเลข Hex ในส่วนของ Valuedata
* โปรแกรมอะไร? ที่สามารถแปลงข้อความให้เป็นตัวเลขแบบ Hex ได้ : หาได้ไม่ยากจาก Internet ครับเยอะด้วย แต่ ใกล้เกลือจะถวิลหาด่างไปทำไม??..ใช้โปรแกรมที่ Windows เตรียมไว้ให้แบบไม่ต้องเสียเวลาติดตั้งดีกว่า โปรแกรมที่ว่าก็คือ Registry Editor นี่แหละ ที่สามารถแปลงข้อความธรรมดาให้เป็น Hex ได้(มีใครจะเถียงผมมั๊ยเนี่ย)

4Create Binary Value With Notepad.

 

 

C. สร้าง REG BINARY ด้วย Notepad

สมมุติผมต้องการใส่ค่า Value data ของ Reg_Binary ที่ชื่อ TEST_BINARY เป็น Hello ผมต้องแปลงข้อความจาก Hello ให้เป็นตัวเลข Hex ก่อนซึ่งก็ได้ตามตัวอย่าง(Pic.4) จากนั้นถึงจะนำตัวเลข Hex ที่ได้ไปเขียนเป็น Value data ซึ่งวิธีการการเขียน Value ของ Reg_Binary เป็นดังนี้ครับ
1. ที่ด้านหลังของเครื่องหมาย = คือค่าของ Value data ต้องมีคำว่า hex: และตามด้วย Value data ที่เป็นเลขฐาน 16
2. เลขฐาน16 ซึ่งเป็นเหมือนตัวอักษรแต่ละตัวนั้น ต้องคั่นด้วยเครื่องหมาย Comma(,) เรียงอักษรจากซ้ายไปขวา
* ถ้าคุณอยากรู้ว่าอักษรแต่ละตัวเมื่อแปลงเป็นเลขฐาน16แล้ว จะได้เลขอะไรก็ให้คุณ Double Click หรือ คลิกขวาที่ Binary ที่คุณสร้าง > Modify... หรือ Modify Binary Data... > ที่ช่อง Value data ให้คุณทดลองพิมพ์ข้อความอะไรก็ได้ ที่ด้านขวา ช่องตรงกลางโปรแกรมจะสร้างตัวเลขฐาน16ให้เอง(จาก Pic 4. ผมก็ใช้วิธีการ Export เหมือนกัน)

 

Create REG_Multi String Value with Notepad.D. สร้างREG_Multi String ด้วย Notepad

จากตัวอย่างของผมเป็นการกำหนด Value data ของ REG_Muti String แบบรรทัดเดียวนะครับ
1. ที่ด้านหลังของเครื่องหมาย = คือค่าของ Value data ต้องมีคำว่า hex(7)และตามด้วย Value data(Hexidecimal)
2.เลขฐาน16 ซึ่งเป็น Value data นั้นต้องคั่นด้วยเครื่องหมาย,00(CommaZeroZero) เรียงอักษรจากซ้ายไปขวา
3. ถ้าข้อมูลมี 1บรรทัด และ มีจำนวนตัวอักษรตั้งแต่1-9ตัวอักษรต้องปิดข้อความด้วย ,00,00,00,00,00(คอมมาศูนย์ศูนย์ 5ครั้ง)
3.1ถ้ามี 10อักษรตัวให้ปิดข้อความด้วย 00,00,00,\จากนั้นให้ขึ้นบรรทัดใหม่ และ พิมพ์ 00,00ปิดท้ายอีกครั้ง
3.2 ถ้าข้อมูลเป็นแบบหลายบรรทัดถึงแม้ว่าข้อมูลจะมีกี่ตัวอักษรก็ตามไม่ต้องปิดด้วย,00 ในแบบข้อ 3.1 แต่ถ้าจะกำหนดข้อความต่อไปเป็นบรรทัดใหม่ต้องใส่เลข ,00,00,00 ก่อนจากนั้นถึงจะใส่ค่าในบรรทัดที่ถัดลงไป และ...etc.(ฯลฯ).....อูย!! กฏเกณมีรายละเอียดปลีกย่อยมากกว่านี้ครับ อธิบายต่อไปสงสัยคนอ่าน เซ็งกันเป็นแถบๆกันพอดี เอาเป็นว่า รายละเอียดที่เหลือ ถ้าคุณผู้อ่านท่านใดขยัน ก็หาความสัมพันธ์กันเอาเองนะครับ
- สำหรับ REG_Expandable ดูผิวเผินแล้วจะคล้ายๆ(ที่ไม่ได้แปลว่าเหมือน) การสร้างREG_Mutistring แต่ก็มีรายละเอียดปลีกย่อยที่ต่างกันREG_QWORD (64bit) จัดเรียงข้อมูลแบบสลับยุ่งยากมาก .

สรุป :รูปแแบบของการสร้าง Value และ กำหนด Value data แต่ละชนิดของ Registry ที่สร้างจาก Notepad เป็นดังนี้
1. ตั้งค่า Value data ของ String ที่เป็นค่า (Default) ของ Key ที่สร้างขึ้นมาใหม่ : @="Value data" (Value data เป็นข้อความธรรมดา)
2. REG _String Value ขึ้นมาใหม่ : "Value Name"="Value data" (Value data เป็นข้อความธรรมดา)
3. REG Binary Value : "Value Name"=hex:Value data (Value data : ไม่ว่าจะเป็นอักษร หรือตัวเลข ต้องแปลงค่าให้เป็น Hex ก่อน)
4. REG DWORD (32bit) Value : "Value Name"dword:Value data (Value data เป็น Hex)
5. REG_QWORD (64bit) Value : "Value Name"=hex(b):Value data (Value data เป็น Hex)
6. REG_Expandable String Value : "Value Name"=hex(2):Value data (Value data : ต้องแปลงข้อความให้เป็น Hex ก่อน)
7. REG_Multi String Value : "Value Name"=hex(7):Value data (Value data : ต้องแปลงข้อความให้เป็น Hex ก่อน)


Maximus:Tangled Funny animation.gif
แนะนำวิธีการสร้าง File. reg เพื่อเอาไว้ควบคุม Registry ไปแล้วแต่ถ้าคุณต้องการลบ Key, Value หรือ Value data ใน Registry ด้วย File.reg หล่ะครับ ต้องทำยังไง?..อ่านต่อ

Basic Registry Page 7.

Delete Key , Value & Value data in registry with Notepad(File.reg) >> Readmore







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