Shareware vb.net приложение, упакованное с помощью innosetup, установленное в разных каталогах, создает 2 разных набора приложений - PullRequest
0 голосов
/ 16 июля 2010

Я создал условно-бесплатное приложение, использующее vb.net visual studio 2008 для Windows, и упаковал его с помощью innosetup 5.3.8.Проблема в том, что когда я установил приложение в C: \ Program Files \ Application и оно успешно работает (используйте пробный период приложения), я также могу установить приложение еще раз заново с той же настройкой, установив его в другой каталог.например, C: \ Program Files \ Application new.Приложение в C: \ Program Files \ Application new не имеет настроек уже установленного.

Где я ошибся.Нужно ли мне позаботиться об этом в моем приложении (vb.net) или innosetup.Как позаботиться об уже установленном пути в innosetup или перенести настройки уже установленного приложения на вновь установленный путь, обновив старый.

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

1 Ответ

1 голос
/ 17 июля 2010

Приложения Windows обычно сохраняют свои настройки в реестре в HKEY_CURRENT_USER\Software\YourCompany\YourApp или в виде файлов в %APPDATA%\YourCompany\YourApp.Оба местоположения могут быть записаны без прав администратора, и оба местоположения зависят от пользователя.То есть, если два пользователя используют один и тот же компьютер, оба могут использовать ваше приложение со своими собственными настройками, не затрагивая другого пользователя.

Вы никогда не должны сохранять какие-либо настройки в c:\Program Files.Запись в папку Program Files требует прав администратора.Если ваше приложение не имеет манифеста, тогда может показаться, что запись в Program Files работает.На самом деле происходит то, что файлы, которые вы записываете в папку Program Files, перенаправляются в VirtualStore.Если системный администратор не отключил VirtualStore.Тогда ваше приложение не будет работать.

Если вы хотите, чтобы ваше приложение было устойчивым, оно должно сохранить настройки только в HKEY_CURRENT_USER\Software\YourCompany\YourApp и / или %APPDATA%\YourCompany\YourApp.Ваше приложение должно использовать настройки по умолчанию, если в этих местах не найдено ранее сохраненных настроек.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...