2 Results for 'ReXapper'

  1. 2008.11.18 컨텍스트 메뉴에 Rexap 등록하기 (1)
  2. 2008.11.06 XAP사이즈, 압축하지 않겠는가? (7)
2008/11/06 - [프로그래밍/Silverlight] - XAP사이즈, 압축하지 않겠는가?
전에 Rexapper.exe라는 아주 유용한 툴에 대해 소개했는데요, 거기에서는 각 프로젝트의 Build Event의 Post Build에 Rexapper를 실행하도록 하는 방법을 썼죠.

그런데 어떤 경우에는 프로젝트의 설정으로 강제로 넣기보다는 최종 배포 직전에 배포자가 명시적으로 커맨드를 실행하고 싶은 경우도 있고 혹은 Rexapper가 설정되지 않았던 프로젝트의 결과물을 단순히 압축하고 싶을 때가 있을거에요.

이럴 때는 다음의 내용을 메모장에 붙여넣고 rexapper.reg 파일로 저장한 후 관리자 모드로 실행하면 탐색기에서 .xap 파일의 컨텍스트 메뉴를 호출하면(마우스 오른쪽 클릭하면) 제일 위에 ReXap이란 명령어가 보이고 그걸 클릭하면 Rexapper가 해당 xap파일을 압축해요.
Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\.xap\Shell\ReXap\Command]
@="d:\\rexapper.exe -xap \"%1\""
물론 위에서 rexapper.exe의 경로는 환경에 맞도록 수정해야 겠죠?
ReXap 복용전

ReXap 복용후! 무려 20%나 용량 감소!!

그러니

저작자 표시 동일 조건 변경 허락
신고
Posted by gongdo

실버라이트 애플리케이션을 배포하는 것에서 가장 중요한 원칙은 뭘까요? 밑줄 긋고 외웁시다.

배포 사이즈를 작게 더 작게!

우리는 XAP 파일이 표준 ZIP 압축 알고리즘을 쓰고 있다는 점을 알고 있죠. 그런데 Delay’s Blog의 포스팅에 의하면 실버라이트 2의 XAP 파일은 압축률이 일반적으로 사용되는 것보다 낮다고 해요. 7-Zip의 압축률을 기준으로 1~3 단계 정도면 용량도 더 줄어들면서 압축 시간은 거의 차이가 없는데 여튼 여기에 착안해서 XAP의 압축률을 변경하여 압축하는 것만으로도 약 20~22% 정도의 용량이 줄어드는 마법(!)같은 효과를 얻을 수 있다는 군요.

저도 예전에 실버라이트 1때에는 7-zip command line 툴을 이용해서 비스무레한 일을 했던 적이 있는데 아무래도 2에서는 XAP을 자동으로 만들어줘서 그러려니 했었죠.

여튼 WEB-SNIPPETS 블로그에서는 이 작업을 좀 더 쉽게 해주는 유틸리티를 공개했는데요, 간단하게 옮겨 보죠.

  1. ReXapper를 다운로드
  2. 받은 파일의 압축을 풀어 임의의 장소에 복사(예 : D:\Utils\ReXapper\ReXapper.exe)
  3. 실버라이트 프로젝트의 Properties(속성)을 열어 Build Event탭의 Post-build event command line 박스를 찾아가서
  4. 다음의 코드를 붙여 넣기
    D:\Utils\ReXapper\ReXapper.exe –xap "$(TargetDir)$(TargetName).xap"

일단 저도 하나만 테스트를 해 봤지만, 348,854 bytes가 268,154 bytes로 약 20% 줄어드는 효과를 봤어요!

그러니…

저작자 표시 동일 조건 변경 허락
신고
Posted by gongdo


티스토리 툴바