Сбой при запуске может быть из-за отсутствия зависимости. Запустите fuslogvw.exe
перед запуском приложения и проверьте, не завершилась ли какая-либо из операций привязки.
Если это не помогает, то, как правило, рекомендуется вести журнал диагностики. Вы можете использовать выделенную библиотеку журналов, например, log4net, или, по крайней мере, вы должны использовать простейшую форму регистрации через System.Diagnostics.Trace
. Вы можете прослушивать сообщения трассировки, настроив прослушиватель трассировки в app.config или используя сторонние инструменты, такие как отладчик, или DebugView от Sysinternals.
Если вы действительно хотите подключить отладчик, вы можете программно вставить точку останова:
System.Diagnostics.Debugger.Break();
Я не проверял, как это работает с удаленным отладчиком, но в качестве крайнего средства вы можете держать ваше приложение в спящем режиме достаточно долго, чтобы позволить вам подключить отладчик:
System.Threading.Thread.Sleep(30000);