|
0 / 0 / 0
Регистрация: 16.06.2017
Сообщений: 26
|
|
Публикация программы C#07.04.2023, 07:04. Показов 2959. Ответов 33
Здравствуйте!
Не запускается приложение после публикации и установки его на ПК. Релизная сборка запускается из VS или прямиком из папки \bin\Release через EXE файл, ошибок не выдаёт. Публикуется с помощью ClickOnce тоже нормально, скачивается, предлагает установить компоненты и т.д. - всё ок. Устанавливается, создаётся ярлык на рабочем столе только с типом .appref-ms, папка в свойствах указывается Рабочий стол (а где тогда хранятся все файлы (exe) ?) Программа появляется в "Удалении программ". Но при нажатии на ярлык с рабочего стола ничего не происходит: процесс ClickOnce появляется и сразу исчезает. Запускаю на том же ПК, на котором разрабатываю. Файлы приложения в состоянии "Включены" (фото не смог добавить). Ресурсы (две картинки, одна база sqlite): Содержание, всегда копировать. Прошу помощи в осознании что я делаю не так. Попытался подробно расписать, так как делаю это впервые. Спасибо. Добавлено через 16 минут Папку расположения файлов я нашёл, там есть EXE файл, но он тоже не запускается, как и через рабочий стол, хотя все DLL, папка ресурсов на месте, как и в папке \bin\Release Добавлено через 2 минуты Мб есть другие пути решения этого. Необходимо: Чтобы программа проверяла наличие обновления, либо я могу принудительно сделать всплывающее окно с требованием обновить, где будет ссылка на скачивание новой версии. Но при обновлении важно сохранять встроенную базу с уже добавленными данными и параметры.
0
|
|
| 07.04.2023, 07:04 | |
|
Ответы с готовыми решениями:
33
Публикация приложения (обновление программы в сети) Публикация программы в интернете |
|
0 / 0 / 0
Регистрация: 16.06.2017
Сообщений: 26
|
||||
| 07.04.2023, 14:52 [ТС] | ||||
|
Наконец-то получилось выловить ошибку.
bin\x86\Release\app.publish\файл.EXE 1:
0
|
||||
|
|
|
| 07.04.2023, 15:02 | |
|
У вас нативные либы от SQLite не копируются в целевой каталог при публикации.
Добавлено через 5 минут Подключать их сейчас надо через Nuget. Последний опубликованный проект с SQLite и публикацией у меня тут. Правда, он sdk-style и на .Net 6. Ничего особенного там не нужно было настраивать для копирования, т.к. всё через Nuget.
0
|
|
|
0 / 0 / 0
Регистрация: 16.06.2017
Сообщений: 26
|
|
| 07.04.2023, 15:11 [ТС] | |
|
+ - я это понял, как это решить?
System.Data.SQLite - в Nuget сразу подключена была, я же её юзаю. Обозреватель объектов-ссылки - все библиотеки есть в списке Перекидывание всех DLL из папки \bin\x86\Release\ в bin\x86\Release\app.publish\ не помогло.ъ Просто реально не могу осознать в чём кроется проблема.
0
|
|
|
|
|
| 07.04.2023, 15:12 | |
|
vukumanku, В свойствах DLL поставить копировать в выходной каталог - Всегда.
0
|
|
|
0 / 0 / 0
Регистрация: 16.06.2017
Сообщений: 26
|
|
| 07.04.2023, 15:19 [ТС] | |
|
Это имеете ввиду?
0
|
|
|
|
|
| 07.04.2023, 15:37 | |
|
vukumanku, Имею ввиду в свойствах обозревателя решений. Выделить там файл с DLL и поставить копировать всегда.
0
|
|
|
0 / 0 / 0
Регистрация: 16.06.2017
Сообщений: 26
|
|
| 07.04.2023, 15:43 [ТС] | |
|
Я мб надоел тут уже, но истина где-то рядом.
В обозревателе решений есть вот это (скрин): папка packages, которая не включена в проект, можно "Включить в проект" - это то, что надо? В папке много подпапок. Или надо все DLL в отдельную папку собрать и добавить в проект?
0
|
|
|
|
|
| 07.04.2023, 15:54 | |
|
Это должно делаться автоматически.
Вручную копирование ставят при ручном подключении dll. Добавлено через 42 секунды Так как проект может публиковаться под разные платформы, он сам должен выбирать, что копировать
0
|
|
|
0 / 0 / 0
Регистрация: 16.06.2017
Сообщений: 26
|
|
| 07.04.2023, 15:57 [ТС] | |
|
"Имею ввиду в свойствах обозревателя решений. Выделить там файл с DLL и поставить копировать всегда."
Получается у меня там нет DLL Добавлено через 2 минуты Так я понимаю в этом и ошибка при сборке публикации. Хотя релиз же норм работает
0
|
|
|
|
||||||
| 07.04.2023, 16:20 | ||||||
Сообщение было отмечено vukumanku как решение
Решение
Если SDK-style проект, попробуйте добавить
0
|
||||||
|
0 / 0 / 0
Регистрация: 16.06.2017
Сообщений: 26
|
|
| 07.04.2023, 16:32 [ТС] | |
|
1 скрин выдаёт ошибки, не запускается. Расположение \bin\x86\Release\app.publish\Application Files\
2 скрин запускается. Расположение \bin\x86\Release
0
|
|
|
0 / 0 / 0
Регистрация: 16.06.2017
Сообщений: 26
|
|
| 07.04.2023, 16:55 [ТС] | |
|
Всё, это помогло.
Огромное спасибо! Вопрос остался, который был у меня в самом начале. Правильно ли я понимаю работу обновления через ClickOnce публикацию: при заливке на сервер новой версии программы, обновляться будут только те файлы, которые были изменены? Просто где-то читал, что при выпуске каждой версии создаётся новая папка, соответственно, как новая программа будет? Суть чтобы пользователи использовали базу данных sqlite, но при обновлении (не затрагивающим sqlite файл) база не заменялась. Поясните, пожалуйста, как это работает.
0
|
|
|
|
||||
| 07.04.2023, 17:01 | ||||
|
Пример проекта с публикацией во вложении.
Правильно - делайте миграции. Чтобы при отсутствии файла, он создавался. Чтобы при изменении структуры БД, она обновлялась без потери данных.
1
|
||||
|
0 / 0 / 0
Регистрация: 16.06.2017
Сообщений: 26
|
|
| 07.04.2023, 17:10 [ТС] | |
|
Огромное спасибо ещё раз.
Тоже склонялся к созданию базы программно, а не файл прикреплять. Сейчас протестил: Properties.Settings.Default сохраняются при скачивании новой версии, которые были добавлены после взаимодействия с предыдущей версией, что уже хорошо.
0
|
|
| 07.04.2023, 17:10 | |
|
Публикация, регистрация готовой программы
Публикация в Twitter Публикация проекта
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Генератор паролей (вариант №3)
Maks 30.10.2026
Финальная версия генератора паролей 1С.
Доработка решения в этот раз коснулась только визуальной части, а именно, добавлен реквизит ДопПараметры (тип Булево), который скрывает/ отображает реквизиты. . .
|
Магическое мышление и магия, современная наука не отличима от магии (говорит ИИ Джемени)
zorxor 30.10.2026
Джемени, расскажи, пожалуйста, что такое магическое мышление, что такое магия, почему современная наука чем-то напоминает магию?
Фраза «Любая достаточно развитая технология неотличима от магии». . .
|
За какое время ИИ может подобрать пароль по хешу (рассказывает Джемени ИИ)
zorxor 30.10.2026
Расскажи, Джемени, если известен хэш МД5, например, за сколько ИИ сможет подобрать соответствующий пароль?
Искусственный интеллект (ИИ) может подобрать простой или средний по сложности пароль по. . .
|
Кто убил Suno? Почему наше солнышко погасло? (диалог с ИИ Джемени)
zorxor 30.10.2026
Как убивали Suno. Хронология.
«Убийство» музыкальной нейросети Suno — это затяжной процесс, в котором технологический хайп стартапа разбился о жесткую реальность судебных исков от гигантов. . .
|
|
Генератор паролей (вариант №2)
Maks 30.10.2026
Обновленная версия ранее созданной обработки.
Добавлены следующие реквизиты типа Булево:
- Буквы;
- Цифры;
- Символы.
Изменена логика команды "Сгенерировать" и процедуры "ПриОткрытии":. . .
|
Генератор паролей (вариант №1)
Maks 29.10.2026
Реализация из решения ниже выполнена исключительно по моей инициативе, дабы облегчить себе работу в создании паролей для администрируемых мною сервисов и пользователей.
Самым главным критерием для. . .
|
Установка ChatGPT (Codex) на Windows без использования Microsoft Store
Fabien159 28.10.2026
Здравствуйте всем читающим! Опишу процесс установки ChatGPT (Codex) на Windows, если по каким-то причинам у вас не получается устанавить его через Microsoft Store.
И так:
1. Скачиваем с. . .
|
Программное добавление префикса в нумерацию документов
Maks 27.10.2026
Реализация из решения ниже выполнена в самописной конфигурации на БСП (помощь начинающему коллеге).
Задача:
Программно добавить префикс в нумерацию документов.
Решение:
В модуле объекта. . .
|