Deployment.AddInAlreadyInstalledException bij installatie Microsoft Office add-in

Attentie! De softwareproducten van Invantive worden niet meer aangeboden via Microsoft ClickOnce. Sinds de zomer van 2017 worden enkel MSI installatieprogramma’s beschikbaar gesteld. Gelieve een actueel instalaltieprogramma te gebruiken op download.invantive.com.

AddInAlreadyInstalledException bij een upgrade?

Verschillende Invantive producten maken gebruik maken van de mogelijkheden van ClickOnce. Dit is een Microsoft technologie waardoor de installatie van Windows applicaties via een link in een webpagina of via een uitvoerbaar programma in een map gebeurt. Eenmaal geïnstalleerd werkt de ClickOnce applicatie zichzelf automatisch bij zodra er een nieuwe versie beschikbaar is.

ClickOnce wordt gebruikt bij bijvoorbeeld Invantive for Outlook, waarmee je binnen Microsoft Outlook toegang hebt tot je projectgegevens en bijvoorbeeld uren kunt schrijven via je Outlook agenda. Maar Microsoft ClickOnce wordt ook gebruikt bij onder andere Invantive Control, Invantive Composition en Invantive Query Tool.

Helaas pakt de ClickOnce technologie soms een nieuwe versie niet goed op. Ook als het setup.exe programma met de hand uitvoert krijg je een foutmelding zoals:

Microsoft.VisualStudio.Tools.Applications.Deployment.AddInAlreadyInstalledException: De aanpassing is niet geïnstalleerd omdat er momenteel een andere versie is geïnstalleerd waarvoor geen upgrade kan worden uitgevoerd vanaf deze locatie. Als u deze versie van de aanpassing wilt installeren, moet u eerst Software gebruiken om het volgende programma te verwijderen: Invantive.Estate.OutlookAddIn. Installeer vervolgens de nieuwe aanpassing vanaf de volgende locatie: 

file://server/distribute/invantive-estate-outlook/Invantive.Estate.OutlookAddIn.vsto

at Microsoft.VisualStudio.Tools.Applications.Deployment.ClickOnceAddInDeploymentManager.VerifySolutionCodebaseIsUnchanged(Uri uri, String subscriptionId, Boolean previouslyInstalled)

at Microsoft.VisualStudio.Tools.Applications.Deployment.ClickOnceAddInDeploymentManager.InstallAddIn()

De Invantive producten controleren zelf dat je alleen met de juiste versies kunt werken, dus er is geen gevaar voor de integriteit van de gegevens. Maar vervelend is het wel. Je kunt natuurlijk de PC opnieuw installeren als je een “AddInAlreadyInstalledException” foutmelding krijgt, maar eigenlijk altijd kun je met het volgende stappenplan de “AddInAlreadyInstalledException” oplossen.

Maak voorafgaand aan je pogingen wel een bruikbare backup van je PC!

Het oplossen van een Deployment.AddInAlreadyInstalledException gaat in drie stappen:

  • De-installeer de applicatie.
  • Maak ClickOnce cache leeg.
  • Verwijder de VSTA registratie.

Stap 1: de-installeer de applicatie

De eerste stap bestaat uit het de-installeren van de Windows applicatie:

  • Ga naar “Programma’s en Onderdelen” in het Windows Start menu.
  • Zoek de ClickOnce applicatie op.
  • Klik op “Verwijderen”.
  • Probeer nogmaals de ClickOnce applicatie opnieuw te installeren via setup.exe.

Stap 2: maak ClickOnce cache leeg

Als de eerste poging niet succesvol was, probeer dan het leegmaken van het ClickOnce cache:

  • Open de Windows Verkenner en klik in de adresbalk.
  • Voer in: “%TEMP%…\apps\2.0” en druk op enter.
  • Doorzoek de onderliggende mappen naar mappen die beginnen met “inva”.
  • Haal deze mappen weg.
  • Probeer de ClickOnce applicatie opnieuw te installeren via setup.exe.

Stap 3: verwijder de VSTA registratie

Als ook de tweede poging niet succesvol was, verwijder dan de VSTA registratie om de AddInAlreadyInstalledException op te lossen:

  • Start de register editor (regedit.exe) als de gebruiker die de ClickOnce applicatie wil installeren.
  • Navigeer naar de registersleutel HKEY_CURRENT_USER\Software\Microsoft\VSTA\Solutions.
  • Verwijder de sleutel(s) waarin een Tekenstring staat die begint met “Invantive”.
  • Probeer de ClickOnce applicatie opnieuw te installeren via setup.exe.

Als het goed is, dan kun je na uitvoering van deze stappen de ClickOnce applicatie installeren zonder de gevreesde “Deployment.AddInAlreadyInstalledException” te krijgen.