Форум программистов, компьютерный форум, киберфорум
C# .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.63/8: Рейтинг темы: голосов - 8, средняя оценка - 4.63
1 / 1 / 0
Регистрация: 30.05.2010
Сообщений: 49

Удаляются файлы программы после развертывания ClickOnce

10.08.2023, 08:57. Показов 2214. Ответов 29

Студворк — интернет-сервис помощи студентам
Всем привет.
Столкнулся с не понятной проблемой, у клиентов стали удаляться файлы с установленной программой, началось как с неделю.
При этом у некоторых клиентов программа стоит уже несколько месяцев без изменений, т.е. не в коде программы беда

Вот тут ставится программа C:\Users\Пользователь\AppData\Local\Apps \2.0\
и из след.папки где стоит программа все очищается, остается только одна папка manifest, а самих файлов нет и пользователь не может запустить программу, только переустановка, но потом как то хаотично все повторяется

Как будто винда или еще что то просто удаляет содержимое этой папки само. И таких точек уже больше 10 набралось с разными проектами, подскажите куда копать или хотя бы как понять что удаляет файлы?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
10.08.2023, 08:57
Ответы с готовыми решениями:

Выбор пути для развёртывания ClickOnce - приложения
Дамы и господа, доброго времени суток! Проблема следующего характера: пишу приложение для фирмы в Visual Studio 11, которое...

Не удаляются файлы после удаления программ
немогу удалить файлы после деинсталяции программ... пишет "Нет доступа к целевой папке" а ниже " Вам необходимо разрешение на...

После установки ArtCAM Pro не удаляются файлы *.art
Здравствуйте! Установил крякнутый «ArtCAM Pro ArtCAM Pro 2008. SP3 (build 260) Создано: Mar 20 2008 © Delcam Pic 1993-2008 ...

29
 Аватар для Andrey-MSK
3397 / 2283 / 388
Регистрация: 14.08.2018
Сообщений: 7,754
Записей в блоге: 4
15.08.2023, 10:32
Студворк — интернет-сервис помощи студентам
WRX, Wolfdp, Да уж, перемудрили MS с обновой...
Apps deployed via ClickOnce might prompt for installation when opened

Добавлено через 57 секунд
И жалобы пошли - Problem with multiple ClickOnce applications needing to be reinstalled every day
0
15.08.2023, 10:45

Не по теме:

Цитата Сообщение от Andrey-MSK Посмотреть сообщение
Да уж, перемудрили MS с обновой...
Плюс один аргумент в копилку "зачем писать свое решение для автообновлений". Хотя, конечно, хотелось бы обходиться штатными средствами.

0
 Аватар для Andrey-MSK
3397 / 2283 / 388
Регистрация: 14.08.2018
Сообщений: 7,754
Записей в блоге: 4
15.08.2023, 11:09
Wolfdp, Ну хоть знают про это, уже хорошо... Будем думать исправят Я с сертификатом предприятия тоже словил эту хрень Вначале грешил на самодельный сертификат, взял у IT валидный, но, как оказалось, он тут не причём
0
 Аватар для Andrey-MSK
3397 / 2283 / 388
Регистрация: 14.08.2018
Сообщений: 7,754
Записей в блоге: 4
18.08.2023, 08:15
Ошибка в Windows 10 вынудила Microsoft удалять обновления ОС с ПК пользователей
Речь идёт об ошибке, связанной с технологией ClickOnce и приводящей к тому, что пользователям предлагается загрузить уже установленные и доверенные приложения.
0
1 / 1 / 0
Регистрация: 30.05.2010
Сообщений: 49
30.08.2023, 08:22  [ТС]
Цитата Сообщение от Andrey-MSK Посмотреть сообщение
Вначале грешил на самодельный сертификат, взял у IT валидный, но, как оказалось, он тут не причём
Что то я понять не могу как теперь подписать проект ключом Ключ приехал, а воспользоваться не могу.
Сможете подсказать с этим вопросом?)))
0
 Аватар для Andrey-MSK
3397 / 2283 / 388
Регистрация: 14.08.2018
Сообщений: 7,754
Записей в блоге: 4
30.08.2023, 08:43
WRX, Сертификат должен быть в формате PFX.

Запускаете Publish, заходите вот сюда, нажимаете Select From File, выбираете свой файл PFX, при его загрузке нужно будет ввести пароль, в поле Timestamp server URL вводите адрес сервера отпечатков времени, вам должны были его дать. И всё, при публикации приложение будет подписано.
0
 Аватар для Andrey-MSK
3397 / 2283 / 388
Регистрация: 14.08.2018
Сообщений: 7,754
Записей в блоге: 4
30.08.2023, 08:53
WRX, Я короче забил на этот ClickOnce, сделал по классике через установщик (InnoSetup) и запилил обновлятор в приложении
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
private static void CheckUpdates()
{
    IWindowService _windowService = Current.Services.GetService<IWindowService>();
 
    // Проверяем версию запущенной сборки
    string currentVersionString = FileVersionInfo.GetVersionInfo(Assembly.GetExecutingAssembly().Location).FileVersion;
    // Конвертируем весию в число
    _ = long.TryParse(currentVersionString.Replace(".", ""), out long currentVersion);
    // Путь к обновлениям на сервере
    string updatePath = Current.Configuration["AppSettings:UpdatesURI"];
    // Временная папка пользователя
    string userTempFolder = Path.GetTempPath();
    // Коллекция для файлов установки
    List<UpdateFile> updates = new List<UpdateFile>();
    // Файл с новой версией
    UpdateFile update = new UpdateFile();
 
    try
    {
        // Удаляем старые версии инсталятора
        string[] filesToDelete = Directory.GetFiles(userTempFolder, "DBClientInstall-*.exe");
 
        if (filesToDelete.Length > 0)
        {
            foreach (string f in filesToDelete)
                File.Delete(f);
        }
 
        // Получаем список файлов на сервере
        string[] files = Directory.GetFiles(updatePath);
 
        if (files.Length > 0)
        {
            foreach (string s in files)
            {
                updates.Add(new UpdateFile
                {
                    FilePath = s,
                    FileName = Path.GetFileName(s),
                    FileVersion = long.Parse(FileVersionInfo.GetVersionInfo(s).FileVersion.Replace(".", ""))
                });
            }
 
            // Находим максимальную версию
            long newVersion = updates.Max(v => v.FileVersion);
 
            // Если версия больше установленной
            // начинаем процесс обновления
            if (newVersion > currentVersion)
            {
                string message = "Доступна новая версия приложения!\n\r" +
                                 "Нажмите \"OK\" для начала загрузки обновления.\n\r\n\r" +
                                 "Дождитесь запуска программы установки!";
 
                // Выводим сообщение
                _windowService.ShowInfoMessage(message, "Обновление");
 
                // Получаем адрес файла с новой версией
                update = updates.FirstOrDefault(u => u.FileVersion == newVersion);
 
                // Качаем его, можно асинхронно, но пока так устраивает
                using (WebClient webClient = new WebClient())
                {
                    webClient.DownloadFile(update.FilePath, Path.Combine(userTempFolder, update.FileName));
                }
 
                // Запускаем инсталятор
                Process.Start(new ProcessStartInfo(Path.Combine(userTempFolder, update.FileName))
                {
                    UseShellExecute = true
                });
 
                // Закрываем приложение
                Current.Shutdown();
            }
        }
    }
    catch (Exception ex)
    {
        _windowService.ShowErrorMessage(ex.ToString(), "Ошибка");
    }
}
Пока еще не до конца оформил, но работает
0
1 / 1 / 0
Регистрация: 30.05.2010
Сообщений: 49
30.08.2023, 09:54  [ТС]
Цитата Сообщение от Andrey-MSK Посмотреть сообщение
Сертификат должен быть в формате PFX
У меня он на рутокене, только в таком виде сейчас выдают. А экспортировать что то не выходит, в рутокене и криптопро пишет не экспортируемый контейнер)))

Там где покупал ответ дали такой))

Здравствуйте,
нет , в индустрии новый стандарт безопасности и теперь все сертификаты распространяются на usb токенах. Файл pfx получить невозможно.
0
 Аватар для Andrey-MSK
3397 / 2283 / 388
Регистрация: 14.08.2018
Сообщений: 7,754
Записей в блоге: 4
30.08.2023, 10:17
WRX, Ну дак спросите у них как подписывать. Должна быть какая-то прога...
0
1 / 1 / 0
Регистрация: 30.05.2010
Сообщений: 49
26.09.2023, 05:16  [ТС]
Что то я с этим ключом и их тех.поддержкой зашел в тупик.
Т.к. ключ Rutoken 3.0, то надо пользоваться JSIGN, но он не поддерживает подпись манифеста, говорит не знает что за файл такой, но exe файл подписывает, но для проекта это не достаточно, все равно ругается, что издатель не понятно кто.

Есть mage.exe, который везде в примерах, но там при использовании именно этого ключа пишет
This certificate does not contain a private key
This certificate cannot be used for signing
Какой то замкнутый круг..в ТП все говорят о том, что это новый продукт в связи с новыми правилами нашей страны и типа они сами еще толком не знают что и как. Получается купил какой то камень за 20к почти)))

У кого-нибудь был опыт в этом с таким ключом?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
26.09.2023, 05:16

Не удаляются файлы, не сохраняются после падения win server 2008 r2
Добрый день! Вчера внезапно упал сервер в синий экран. После перезагрузки запустил chkdisk, затем включил сервер. Все работает...

После клонирования репы c Linux на Windows все файлы сразу удаляются
Использую git для синхронизации заметок в Obsidian. Изначально заметки писал только на Windows, последние месяца 3 пишу только на Linux,...

не удаляются ключи оставшиеся после удаления программы
Прошу помочь. ставил прогу Wawlab, загрузил в окошко ключ, а программа не пошла. Запустил Uninstal, удалил, видимых следов нет. При...

После попытки скачать архиватор, не удаляются программы
После попытки скачать архиватор не удаляются программы через панель управления.Сообщение&quot;подождите пока анинсталлер...

Не устанавливаются и не удаляются программы после обновления Ubuntu с 16.04 до 17.04
Почему возникают проблемы после обновления с Ubuntu 16.04 до Ubuntu 17.04? Здравствуйте! Почему-то после обновления Ubuntu с 16.04 до...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
30
Ответ Создать тему
Новые блоги и статьи
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#. Название изменил на ColorStep. Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами: - ВидТО (СправочникСсылка. ВидыТО); - ВидГСМ. . .
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU. Опрашиваются регистры. . .
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка: Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман. Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
мат медиц модель 30. презентация проекта
anaschu 27.08.2026
хоп хоп хоп хидахоп, а я кладую))
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru