สวัสดีครับบทความนี้มาจากปัญหาของสมาชิกท่านหนึ่งในบอร์ด linuxthai.org เบื้องต้นผมได้แนะนำหลักการไปแล้ว มาวันนี้ผมจะขออธิบายอย่างละเอียดว่าในการนำ Registry แบบ 64 Bit มาใช้กับระบบ 32 Bit เราต้องพิจารณายังไง แก้ไขส่วนใดบ้างถึงจะใช้ได้
ตำแหน่งเก็บ Registry เกมส์จะมีอยู่ 2 ตำแหน่ง คือ
1. HKEY_CURRENT_USER
2. HKEY_LOCAL_MACHINE
HKEY_CURRENT_USER
ผมจะเอา Registry ของเกมส์ Audition ซึ่งเก็บไว้ที่ HKEY_CURRENT_USER ระหว่าง 64 Bit กับ 32 Bit มาเปรียบเทียบกันดู
Registry Audition 32 Bit
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\AUDITION]
[HKEY_CURRENT_USER\Software\AUDITION\Thailand]
@="D:\\Game\\Audition\\audition.exe"
"AUTOSTART"=dword:00000000
"CEHCKVERSION"=dword:00001770
"EXECUTE"="audition.exe"
"PatcherVersion"=dword:00000024
"PATH"="D:\\Game\\Audition"
"VERSION"=dword:00001887
Registry Audition 64 Bit
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\AUDITION]
[HKEY_CURRENT_USER\Software\AUDITION\Thailand]
@="D:\\Game\\Audition\\audition.exe"
"AUTOSTART"=dword:00000000
"CEHCKVERSION"=dword:00001770
"EXECUTE"="audition.exe"
"PatcherVersion"=dword:00000024
"PATH"="D:\\Game\\Audition"
"VERSION"=dword:00001887
จะเห็นว่า Registry ทั้ง 2 ระบบ เหมือนกัน สามารถใช้ด้วยกันได้
HKEY_LOCAL_MACHINE
ในส่วนนี้ผมจะใช้ Registry เกมส์ Couter Strike Online ซึ่งเก็บไว้ที่ HKEY_LOCAL_MACHINE ระหว่าง 64 Bit กับ 32 Bit มาเปรียบเทียบกันดู
Registry THCSO 32 Bit
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\PlayFPS\THCSO]
"Executable"="D:\\Game\\THCSO\\Bin\\CSOLauncher.exe"
"RootPath"="D:\\Game\\THCSO\\"
@="D:\\Game\\THCSO\\Bin\\CSOLauncher.exe"
"PATH"="D:\\Game\\THCSO\\Bin"
Registry THCSO 64 Bit
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\PlayFPS\THCSO]
"Executable"="D:\\Game\\THCSO\\Bin\\CSOLauncher.exe"
"RootPath"="D:\\Game\\THCSO\\"
@="D:\\Game\\THCSO\\Bin\\CSOLauncher.exe"
"PATH"="D:\\Game\\THCSO\\Bin"
จะเห็นว่ามีตำแหน่งที่เก็บ Registry ต่างกัน \Wow6432Node
สรุป
ในการนำ Registry เกมส์แบบ 64 Bit มาใช้กับ 32 Bit มีหลักในการพิจารณา 2 หลัก คือ
1. หากเป็น Registry ตำแหน่ง HKEY_CURRENT_USER สามารถนำไปใช้ได้เลย
2. หากเป็น Registry ตำแหน่ง HKEY_LOCAL_MACHINE ต้องลบคำว่า \Wow6432Node ออกก่อน จึงจะสามารถนำไปใช้ได้
หวังว่าบทความนี้จะช่วยให้ท่านเข้าใจในระบบ Registry ระหว่าง 32 Bit และ 64 Bit และสามารถนำไปใช้กับเกมส์ต่างๆได้ด้วยตัวเอง ขอบคุณทุกท่านที่ติดตามอ่านบทความนี้ครับ
ไม่มีความคิดเห็น:
แสดงความคิดเห็น