/ / Prečo skratka vytvorená mojou inštaláciou MSI spúšťa proces nastavenia pokaždé znova? - c #, .net, inštalátor systému Windows

Prečo skratka vytvorená pomocou mojej inštalácie MSI spúšťa každý raz nastavovací proces? - c #, .net, windows-installer

Vytvoril som inštalačný program MSI pre našu aplikáciu C #cez VS 2008. Nainštaloval som ho. Na pracovnej ploche mi vytvoril odkaz. Klikla som na túto skratku, proces nastavenia sa znova spustil a na konci bola spustená naša aplikácia. Nebolo to tak včera predtým, ako som pridal vlastnú akciu na vytvorenie databázy. Nevytvoril som skratku v inštalátore, prečo je to tak?

odpovede:

5 pre odpoveď č. 1

MSI prichádza s funkciou automatickej opravy, ktorá kontroluje, či sú pri spustení aplikácie pomocou odkazu stále prítomné všetky komponenty nainštalované programom MSI.

Vo vašom prípade boli pravdepodobne odstránené (alebo viac) komponenty, aby sa inštalátor znova spustil, aby ste mohli opraviť vašu inštaláciu.

Zabránite spusteniu automatickej opravy

  • Uistite sa, že nie je odstránený žiadny súbor, nastavenie databázy Registry ani iný nainštalovaný komponent

alebo

  • Nastaviť kľúčovú cestu pre tieto komponenty, čo zabráni MSI kontrolovať tieto špecifické komponenty

Z vašich ďalších otázok sa zdá, že váš MSIbol vytvorený programom Visual Studio Setup and Deployment Project. Bohužiaľ, neexistuje možnosť zmeniť cestu kľúča z programu Visual Studio. Máte nasledujúce možnosti:

  • Upravte MSI manuálne pomocou Orca (Toto nie je dobrá voľba, pretože ide o manuálny krok)
  • Napíšte skript, napr. pomocou VBScript na opravu MSI súboru
  • Prejdite na pokročilejší inštalačný systém, ktorý vám poskytne väčšiu kontrolu, napríklad WiX alebo NSIS

6 pre odpoveď č. 2

Otvorte MSI manuálne pomocou Orca. Pridajte nasledujúci záznam do tabuľky vlastností (Property, Value) bez úvodzoviek:

Vlastnosť = "DISABLEADVTSHORTCUTS" Hodnota = "1"

Toto môže byť tiež napísané a spustené ako súčasť udalosti post build.


1 pre odpoveď č. 3

Je odkaz odkazujúci na vašu aplikáciu alebo na nastavenie? Ak to ukazuje na vaše nastavenie a zmeníte ju na vašu aplikáciu, problém to zmizne?


1 pre odpoveď č. 4

Znie to, že systém si myslí, že inštalácia bola poškodená a automaticky sa pokúša o opravu. Všetko v protokoloch udalostí (vyhľadajte zdroj MsiInstaller v denníku udalostí aplikácie).

Stavali ste viac kópií?


1 pre odpoveď č. 5

Toto sa stane, keď aplikácia odstráni súbor, ktorý bol nasadený počas inštalácie. Automatická oprava je aktivovaná, a preto dostanete inštalačnú obrazovku.


0 pre odpoveď č. 6

Mal rovnaký problém. V mojom prípade sa ukázalo, že táto otázka bola v políčkach „Projekt“ a „ProductName“ vo vlastnostiach projektu Deoplyment Project. Je potrebné, aby bola rovnaká ako štruktúra priečinkov, na ktoré odkazuje váš odkaz, inak budete skončiť s "Zdrojom" C: Program Files (x86) [Výrobca] [ProductName] "neexistuje" chyba v prehliadači udalostí ,