64비트 윈도우 프로그래밍 요약

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비트 덤프 파일로 불러낼 수 있다고 되어 있고, 실제로 해봐도 된다.

최 재훈

블로그, 페이스북, 트위터 고성능 서버 엔진, 데이터베이스, 지속적인 통합 등 다양한 주제에 관심이 많다.
Close Menu