Файлы журнала ClickOnce для каждой установки записываются в кэш WinInet (папка временных файлов Интернета) как для неудачных, так и для успешных развертываний и запусков. К сожалению, файлы журналов имеют запутанные имена, из-за чего довольно сложно определить, какой файл журнала принадлежит какому приложению. Вам также может понадобиться отфильтровать их от десятков или сотен других файлов, которые попадают в кеш большинства пользователей Интернета. Соглашение об именовании этих файлов - префикс System_Deployment_Log_XXX, где XXX - запутывание.
Вы также можете установить свое местоположение файла журнала. Если вы решите сделать это, все ошибки будут записаны в один файл в указанном вами месте, и каждая активация добавляет свои записи журнала в конец файла. Таким образом, этот подход может дать вам текущий комментарий о нескольких попытках запуска.
Чтобы настроить это, найдите раздел реестра:
HK_Current_User \ Software \ Classes \ Software \ Microsoft \ Windows \ CurrentVersion \ Deployment
Добавьте строковое значение с именем LogFilePath и установите для его значения полный путь, куда вы хотите записать записи журнала (например, C: \ temp \ ClickOnceErrors.txt). Как только вы это сделаете, все ошибки будут записаны там. Вы также можете повысить уровень регистрируемой детализации, добавив новое строковое значение с именем LogVerbosityLevel и установив его равным 1.
Редактировать : Судя по вашим тестам и комментариям, кажется, что установка выполняется правильно, и именно запуск программы вызывает проблему. Я предлагаю установить обработчики в главном потоке вашего приложения (см. AppDomain.UnhandledException и AppDomain.ThreadException ) для регистрации исключения, чтобы вы могли исследовать проблему более подробно.