Как я могу использовать автообновление для замены файлов программы? - PullRequest
0 голосов
/ 18 декабря 2009

Мы разработали программу, которая проверяет наш веб-сайт, чтобы узнать, доступна ли новая версия. Когда доступна новая версия, запускается программа загрузки, которая извлекает файлы, затем копирует всю эту папку поверх исходного и перезапускает программу с новой версией.

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

Есть ли способ предотвратить это? Обычно мы используем проекты установки и развертывания в .NET 2008 для создания наших установщиков приложений.

1 Ответ

0 голосов
/ 18 декабря 2009

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

Я не уверен, как сделать двоичные файлы не ключами из проекта deploy. Это опция для каждого файла в проектах Installshield.

Если вы установите заглушку или точку входа для приложения с помощью установщика и скопируете остальные зависимости, установщик Windows не восстановит установку, если она была изменена за пределами.

...