Где я должен развернуть свое приложение? - PullRequest
2 голосов
/ 09 февраля 2009

В Windows Vista (2008 и Seven) приложение не может писать в папке Program Files. Я понимаю, что ответственность несет UAC, но он не позволяет моему приложению самостоятельно обновляться. Есть ли где-нибудь папка (доступная в Windows XP, Vista (и всех других версиях)), которая позволила бы мне развернуть мое приложение и позволить ему самообновляться без необходимости устанавливать его " повышенный "?

Я думал о ClickOnce, но не могу использовать, так как не хочу платить за дорогой сертификат (подписать код, установщик и т. Д.).

Спасибо!

Ответы [ 2 ]

2 голосов
/ 09 февраля 2009

Я лично ненавижу эту идею, но несколько приложений пошли по этому пути: вместо установки приложения в каталог Program Files установите в каталог AppData.

Я впервые увидел это с Microsoft SyncToy PowerToy, а затем с набором патчей для World of Warcraft перед выпуском Wrath of the Lich King. Совсем недавно я видел, как Google Chrome также устанавливается в каталог AppData.

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

2 голосов
/ 09 февраля 2009

Возможно, вам все равно следует спросить разрешение перед обновлением приложения. Попытка записи в C:\Program Files по своей сути является рискованной операцией, которую пользователь должен авторизовать. Поэтому я бы просто сказал пользователю, что вы делаете, и позволил бы ему обновлять свою работу.

...