64비트 윈도우를 프로그래밍 하기 위해서 알아야 할 모든 것들 요약이다.
IsWow64Process 함수
64비트 컴파일된 프로그램인지 아닌지를 판단할 때 쓰면 된다. 서버 기동할 때 사용자에게 32비트 모드인지 64비트 모드인지 알려줄 필요가 있지 않을까? 그렇지 않으면 실수로 32비트 서버를 띄울지도 모른다.
데이터 타입
DWORD, LONG 같은 자료형의 크기는 32비트에서나 64비트에서나 똑같다. 하지만 이런 자료형의 포인터는 크기가 다르다. 그러니 포인터나 핸들을 다른 타입에 저장해선 안 된다. 크기가 같을 것이라고 HWND 값을 FARPROC에 저장했다간 피 본다.
포팅용 전처리자
-
_M_IX86 : x86
-
_M_AMD64 : x64
-
_WIN64 : x64 및 아이테니움(Itanium)
디버깅
원격 디버깅을 통해 로컬 컴퓨터(Windows XP x86)에 설치된 비주얼 스튜디오 원격 서버(x64)에 떠있는 x64 애플리케이션을 디버깅할 수 있다.
미니 덤프: 비주얼 스튜디오는 64비트 미니 덤프를 불러오지 못한다라고 되어 있는데, MSDN엔 64비트 덤프 파일로 불러낼 수 있다고 되어 있고, 실제로 해봐도 된다.
Author Details
Kubernetes, DevSecOps, AWS, 클라우드 보안, 클라우드 비용관리, SaaS 의 활용과 내재화 등 소프트웨어 개발 전반에 도움이 필요하다면 도움을 요청하세요. 지인이라면 가볍게 도와드리겠습니다. 전문적인 도움이 필요하다면 저의 현업에 방해가 되지 않는 선에서 협의가능합니다.