Misschien een beetje wazige topic titel, maar zal het hieronder uitleggen:
Wij hebben Windows Services applicaties geschreven in C# die data importeren en wegschrijven in een SQL server DB. Via het "Setup Project" in VS 2005 hebben wij hiervoor MSI installers gegenereerd die de volgende acties uitvoeren:
1. Installeren applicatie files (dus exe + config + ondersteunende DLL's)
2. Registreren van de Windows Service
Deze applicaties worden op verschillende OTAP omgevingen (Ontwikkel, Test, Acceptatie, Productie) geinstalleerd. Na installatie zijn de volgende handmatige acties nodig:
- De Windows Service moet onder een specifieke user draaien (ivm rechten SQL server)
- De App.config file moet worden aangepast ivm omgeving specifieke settings
Het probleem
Als wij een update van de applicatie uitbrengen moeten bovenstaande acties (Service user instellen+Config aanpassen/restoren) iedere keer opnieuw uitgevoerd worden.
Updates doen we nu als volgt:
1. Version ophogen van Setup Project
2. Daarna nieuwe ProductCode genereren
3. RemovePreviousVersions property op true zetten zodat oude versies automatisch worden gedeinstalleerd.
Als we dan een update draaien gebeurt het volgende:
1. Applicatie wordt gedeinstalleerd (de App.config wordt ook mee gedeinstalleerd)
2. De Service wordt gederegistreerd
3. Nieuwe applicatie wordt geinstalleerd met een default config (zoals in de setup) en de default Windows Service user (LocalSystem)
Dit is dus onwenselijk, want nu moeten we weer opnieuw de config en Service user instellen.
De config kunnen we eventueel uit de update setup halen, het probleem is echter dat MSI eerst altijd een deinstallatie uitvoert waardoor de config's ook verdwijnen.
Is het mogelijk om alleen EXE DLL's te overschrijven zonder dat MSI eerst een deinstallatie uitvoert? Op onderstaande URL kon ik het antwoord ook niet vinden:
http://www.simple-talk.co...pdates-to-setup-projects/
Wij hebben Windows Services applicaties geschreven in C# die data importeren en wegschrijven in een SQL server DB. Via het "Setup Project" in VS 2005 hebben wij hiervoor MSI installers gegenereerd die de volgende acties uitvoeren:
1. Installeren applicatie files (dus exe + config + ondersteunende DLL's)
2. Registreren van de Windows Service
Deze applicaties worden op verschillende OTAP omgevingen (Ontwikkel, Test, Acceptatie, Productie) geinstalleerd. Na installatie zijn de volgende handmatige acties nodig:
- De Windows Service moet onder een specifieke user draaien (ivm rechten SQL server)
- De App.config file moet worden aangepast ivm omgeving specifieke settings
Het probleem
Als wij een update van de applicatie uitbrengen moeten bovenstaande acties (Service user instellen+Config aanpassen/restoren) iedere keer opnieuw uitgevoerd worden.
Updates doen we nu als volgt:
1. Version ophogen van Setup Project
2. Daarna nieuwe ProductCode genereren
3. RemovePreviousVersions property op true zetten zodat oude versies automatisch worden gedeinstalleerd.
Als we dan een update draaien gebeurt het volgende:
1. Applicatie wordt gedeinstalleerd (de App.config wordt ook mee gedeinstalleerd)
2. De Service wordt gederegistreerd
3. Nieuwe applicatie wordt geinstalleerd met een default config (zoals in de setup) en de default Windows Service user (LocalSystem)
Dit is dus onwenselijk, want nu moeten we weer opnieuw de config en Service user instellen.
De config kunnen we eventueel uit de update setup halen, het probleem is echter dat MSI eerst altijd een deinstallatie uitvoert waardoor de config's ook verdwijnen.
Is het mogelijk om alleen EXE DLL's te overschrijven zonder dat MSI eerst een deinstallatie uitvoert? Op onderstaande URL kon ik het antwoord ook niet vinden:
http://www.simple-talk.co...pdates-to-setup-projects/
[ Voor 0% gewijzigd door pjonk op 16-12-2007 15:33 . Reden: typo's ]
It’s nice to be important but it’s more important to be nice