Отладка внебраузерных Silverlight приложений
В Silverlight 4 возможности, доступные для внебраузерных приложений, увеличились многократно. Чего стоит только поддержка взаимодействия с COM объектами и доступа к файловой системе в доверенном сценарии. Но, когда разработчики начинают создавать внебраузерные приложения, для многих не совсем очевиден механизм их отладки. Ведь, отлаживая приложения в браузере, доступа к специфическим внебраузерным возможностям нет. Поэтому хорошим решением кажется присоединение отладчика к процессу «sllauncher.exe», в котором работают внебраузерные приложения. Но данное решение не позволяет отлаживать код, выполняемый при загрузке. Вероятно должен быть способ получше.
Далее я такой способ и опишу.
Предположим, что Silverlight приложение создано, настроено для работы вне браузера и хостится в проекте Web приложения.
- Если проект Web приложения не является стартовым проектом (запускаемым при нажатии F5 в Visual Studio), сделайте его таковым.
- Запустите проект.
- Установите внебраузерное Silverlight приложение.

- После установки внебраузерное приложение запустится. Закройте его и остановите отладку в Visual Studio.
- Сделайте проект Silverlight приложения стартовым. Для этого нажмите правой кнопкой мыши на имени проекта в окне «Solution Explorer» и выберите пункт «Set as StartUp Project».
- После этого в том же контекстном меню проекта Silverlight приложения выберите пункт «Properties»
- В открывшемся окне свойств проекта перейдите на вкладку «Debug». И установите для «Start Action» значение «Installed out-of-browser application». В выпадающем списке выберите, скорее всего, единственный пункт, а именно имя установленного внебраузерного приложения.

- Всё, можно сохранить изменения, и поставить точку останова в нужном месте Silverlight приложения.

- Нажмите F5. Silverlight приложение сразу запустится вне браузера. Отладчик будет присоединён автоматически.