C_932 로드시 SysWow64 리다이렉션을 해제

This commit is contained in:
I_Jemin 2016-11-13 02:52:46 +09:00
parent e20ea31e61
commit 8714645aa0

View File

@ -1,4 +1,4 @@
// ithsys.cc // ithsys.cc
// 8/21/2013 jichi // 8/21/2013 jichi
// Branch: ITH_SYS/SYS.cpp, rev 126 // Branch: ITH_SYS/SYS.cpp, rev 126
// //
@ -758,6 +758,16 @@ BOOL IthInitSystemService()
return FALSE; return FALSE;
DWORD base = (DWORD)peb->ReadOnlySharedMemoryBase; DWORD base = (DWORD)peb->ReadOnlySharedMemoryBase;
DWORD end = base + info.RegionSize - 0x40; DWORD end = base + info.RegionSize - 0x40;
// 일본어 코드 페이지 C_932 이 SysWow64에 없음
// 64bit에서 (32bit) 로 실행할 경우 SysWow64로 리다이렉트 되는 것 해제
PVOID OldValue;
Wow64DisableWow64FsRedirection(&OldValue);
static WCHAR system32[] = L"system32"; static WCHAR system32[] = L"system32";
for (;base < end; base += 2) for (;base < end; base += 2)
if (::memcmp((PVOID)base, system32, 0x10) == 0) { if (::memcmp((PVOID)base, system32, 0x10) == 0) {