วันพุธที่ 28 พฤศจิกายน พ.ศ. 2555

การนำ Registry 64 Bit มาใช้แบบ 32 Bit




สวัสดีครับบทความนี้มาจากปัญหาของสมาชิกท่านหนึ่งในบอร์ด 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 และสามารถนำไปใช้กับเกมส์ต่างๆได้ด้วยตัวเอง ขอบคุณทุกท่านที่ติดตามอ่านบทความนี้ครับ

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

แสดงความคิดเห็น