며칠 전에 아이튠즈 설치하기를 올렸는데, 이번엔 회사에 오피스 2010이 설치되지 않길래 방법을 찾아서 올려드립니다. 윈도우 XP 64비트 에디션은 MS에게서 버림받은 녀석인가 보네요 ㅠㅠ



위 메시지를 보면 64비트 플랫폼에 윈도우 XP가 빠져있죠. 또한 태생이 같은 서버 2003 64비트에도 설치되지 않습니다. 그리고 MSXML 6.1 버전도 설치하라고 나오네요.


우선 MSXML 6.1 버전을 설치하라고 나온 경우 아래 페이지로 가셔서 다운로드 받으시면 됩니다.
Microsoft Core XML Services (MSXML) 6.0 Service Pack 1


다음은 윈도우 버전 문제를 해결해야겠죠? 여기서는 Microsoft Application Verifier를 이용하겠습니다. 사실 제가 이 툴에 대해서는 잘 모릅니다. 다만 개발자 분들에게 유용한 디버깅 툴이라는 정도만 알고 있습니다. 대략적인 소개는 아래 MSDN 라이브러리를 참고하세요.
http://msdn.microsoft.com/en-us/library/aa480483.aspx


그래서 이걸로 뭘 어쩔 것이냐구요? 이걸로 윈도우 버전을 속일 수 있더군요. 뭐 그러라고 만들어진 툴은 아니겠지만... 아무튼 그런 기능이 있습니다. 제가 착각한게 아니라면 아마 그 기능이 맞을거에요.


일단 이 디버깅 툴부터 설치해주세요. x64 버전으로 설치하시면 됩니다.
Microsoft Application Verifier


설치한 다음 툴을 실행해주세요. 32비트 오피스를 설치하실 생각이라면 32비트 디버깅 툴을 실행해주시고, 64비트 오피스를 설치할 생각이라면 64비트 디버깅 툴을 실행해주세요.

실행하신 다음 Ctrl + A 눌러서 오피스 2010의 setup.exe 파일을 불러옵니다. DVD에 들어있는 상태로 바로 불러오셔도 상관이 없습니다. 파일을 불러오셨다면

Compatibility - HighVersionLie 부분에 체크하고 Save 누르고 Exit 하시면 끝입니다. 그러면 바로 오피스 2010 설치가 가능합니다.



제가 설치파일을 실행한 다음 디버깅 로그를 보니까 윈도우 버전을 7.4로 속이는 것 같더군요. 7.4는 나오지도 않았는데 차세대 윈도우인가요 ㅎㅎ 아무튼 GetVersionEX API 호출에 대해 7.4 버전에 빌드넘버 4790이라고 거짓 값을 넘겨준 것 같습니다. 제 눈에는 그렇게 보이는데 혹시 제가 잘못 예측한 것이라면 고수님들 지적 바랍니다.
-
<avrf:logEntry Time="2011-03-01 : 10:12:18" LayerName="HighVersionLie" StopCode="0x2200" Severity="Information">
  <avrf:message>Called the GetVersionEx API.</avrf:message>
  <avrf:formatmessage>Returned 7.4 build number: 4790.</avrf:formatmessage>
  <avrf:parameter1>0 - N/A</avrf:parameter1>
  <avrf:parameter2>0 - N/A</avrf:parameter2>
  <avrf:parameter3>0 - N/A</avrf:parameter3>
  <avrf:parameter4>0 - N/A</avrf:parameter4>
  </avrf:logEntry>


설치 성공한 후 스샷 한장 올려드립니다.