Silverlight/Tips

실버라이트 OOB 디버깅하기

길버트리 2010. 5. 21. 14:20


OOB


OOB는 Out of Browser의 준말로서, 실버라이트 어플리케이션을 데스크탑에 설치 한 형태를 뜻합니다.
OOB 상태에서 작동하는 실버라이트 어플리케이션은 웹브라우저에서 구동될 때와 달리 사용자 PC
로컬자원에 부분적으로 접근할 수 있는 등. 할 수 있는 일이 약간 많아진다고 보시면 됩니다.


OOB 어플리케이션의 디버깅

많은 개발자들이 [Debug - Attach Process...]메뉴를 이용하여 실버라이트 OOB의 프로세스인 SLLauncher.exe 프로세스를
선택한 다음 디버깅을 합니다.
하지만 이 방법의 단점은 이미 Application이 시작된 이후에 Process에 디버거를 붙이기 때문에,
App이나 RootVisual의 생성자나 초기에 구동되는 루틴에 대해서는 디버깅을 할 수가 없다는 것입니다.

다음을 따라하시면 OOB 디버깅이 가능합니다.

STEP 1. 비주얼 스튜디오에서 자신의 OOB 어플리케이션을 실행하여 데스크탑에 설치하고, 종료시킨다.

   - 이 과정은 모두들 아시겠지만 OOB를 설치하는 방법은 웹브라우저에 띄운 Silverlight OOB 어플리케이션에
     마우스 오른쪽 클릭을 한 다음 '설치하기'를 실행하시면 됩니다.

STEP 2. 비주얼 스튜디오에서 실버라이트 프로젝트에 오른쪽 클릭을 하고 'Set as Startup Project'를 실행하여 시작 프로젝트로 설정한다.

STEP 3. 실버라이트 프로젝트의 속성페이지 Debug 탭에서 'Start Action'을 Installed out-of-browser application으로 선택한다.

STEP 4. F5를 눌러 어플리케이션을 실행하면 이제 디버깅이 잘 된다.


Reference

다음 자료를 참고하였습니다.
John Papa - 10 Steps to Debug Silverlight Out Of Browser Applications without Attaching
Laurent Duveau - Debug Out Of Browser(OOB) Silverlight apps
김민구 - Out-of-Browser 디버깅 하는 방법