/ / Защо бързият път, създаден от моя MSI инсталация, стартира отново процеса на настройка всеки път? - c #, .net, windows-инсталатор

Защо бързият път, създаден от моя MSI инсталация, стартира отново процеса на настройка всеки път? - c #, .net, windows-инсталатор

Създадох инсталатора на MSI за нашето приложение C #през VS 2008. Аз го инсталирах. Тя създаде пряк път за мен на работния плот. Кликнах върху този пряк път, процесът на настройка стартира отново и в края на проекта ни стартира. Това не беше така вчера, преди да добавя някои персонализирани действия за създаване на база данни. Не съм пресъздал прекия път в инсталатора. Защо е така?

Отговори:

5 за отговор № 1

MSI идва с функция за автоматично ремонт, която проверява дали всички компоненти, инсталирани от MSI, все още са налице, когато стартирате приложението си с помощта на прекия път.

Във вашия случай вероятно е бил премахнат един (или повече) компоненти, така че инсталаторът да бъде пуснат отново, за да поправи инсталацията ви.

За да избегнете автоматичното поправяне

  • Уверете се, че няма премахнат файл, настройка на системния регистър или друг инсталиран компонент

или

  • Не поставяйте пътя на ключовете за тези компоненти, което ще попречи на MSI да провери тези специфични компоненти

От вашите други въпроси изглежда, че вашият MSIе създаден от проект за инсталиране и инсталиране на Visual Studio. За съжаление, няма опция за модифициране на ключовия път в рамките на Visual Studio. Имате следните опции:

  • Промяна на MSI ръчно чрез Orca (Това не е добър вариант, защото е ръчна стъпка)
  • Напишете сценария напр. използвайки VBScript, за да залепи MSI файла
  • Преминете към по-модерна инсталационна система, която ви дава по-голям контрол като WiX или NSIS

6 за отговор № 2

Отворете MSI ръчно, като използвате Orca. Добавете следния запис в таблицата за свойства (свойство, стойност) без котировките:

Имот = "DISABLEADVTSHORTCUTS" Стойност = "1"

Това също може да бъде сценарирано и изпълнено като част от събитие след изграждането.


1 за отговор № 3

Командата за бърз достъп ли посочва приложението ви или настройката ви? Ако посочите настройката си и я промените на приложението си, проблемът изчезна ли?


1 за отговор № 4

Звучи, че системата смята, че инсталирането е повредено и автоматично се опитва да се поправи. Всичко в регистрационните файлове за събития (потърсете източника на MsiInstaller в регистъра на събитията за приложения).

Изграждали ли сте няколко копия?


1 за отговор № 5

Това се случва, когато приложението изтрие файл, инсталиран по време на инсталацията. Автоматичната ремонт е активирана и по този начин ще получите инсталационния екран.


0 за отговор № 6

Имаше същия проблем. В моя случай се оказа, че проблемът е "Производител" и "Име на продукт" в рамките на свойствата на проект Deoplyment Project. Трябва да бъде същата като структурата на папките, към която е насочена вашата пряк път, в противен случай ще приключите с "Ресурс" C: Program Files (x86) [Производител] [ProductName] "не съществува" грешка в Viewer ,