Delen via


Problemen met implementatie van Office-oplossingen oplossen

Van toepassing op: Visual Studio

In dit artikel wordt beschreven hoe u veelvoorkomende problemen kunt oplossen die kunnen optreden bij het implementeren van Office-oplossingen.

De informatie in dit artikel is van toepassing op projecten op documentniveau en VSTO-invoegtoepassingsprojecten (Visual Studio Tools for Office). Zie Functies die beschikbaar zijn per Office-app licatie en projecttype.

Problemen met Office-oplossingen oplossen met behulp van de logboeken

U kunt de logboeken in Windows gebruiken om foutberichten te zien die zijn vastgelegd door de Visual Studio Tools for Office Runtime wanneer u Office-oplossingen installeert of verwijdert. U kunt deze berichten van de gebeurtenislogger gebruiken om installatie- en implementatieproblemen op te lossen. Zie Gebeurtenislogboekregistratie voor Office-oplossingen voor meer informatie.

De assemblynaam wijzigen veroorzaakt conflicten

Als u de waarde assemblynaam wijzigt op de pagina Toepassing van projectontwerper nadat u al een oplossing hebt geïmplementeerd, worden het installatiepakket gewijzigd in één Setup.exe bestand en twee implementatiemanifesten. Als u twee manifestbestanden implementeert, kunnen de volgende voorwaarden optreden:

  • Als de eindgebruiker beide versies installeert, worden beide VSTO-invoegtoepassingen geladen.
  • Als de VSTO-invoegtoepassing is geïnstalleerd voordat de assemblynaam is gewijzigd, ontvangt de eindgebruiker nooit updates.

Als u deze voorwaarden wilt voorkomen, wijzigt u de assemblynaamwaarde van de oplossing niet nadat u de oplossing hebt geïmplementeerd.

Controleren op updates duurt lang

Visual Studio 2010 Tools voor Office Runtime biedt een registervermelding die beheerders kunnen gebruiken om de time-outwaarde in te stellen voor het downloaden van de manifesten en de oplossing.

De time-outwaarde instellen

  1. Navigeer in het register naar de volgende sleutel:

    HKEY_CURRENT_USER\Software\Microsoft\VSTA

  2. Stel in de subsleutel AddInTimeout de time-outwaarde in milliseconden in.

    Als de Subsleutel AddInTimeout niet bestaat, maakt u deze als een DWORD.

Kan een netwerkbestandsshare niet bijwerken of publiceren

Office-oplossingen die zich op een netwerkbestandsshare bevinden, geven mogelijk een misleidend bericht weer tijdens updates als het Setup.exe-bestand van de oplossing is vergrendeld in een proces terwijl de update wordt gepubliceerd. Het bericht kan het volgende zeggen: 'Kan 'setup.exe' niet toevoegen aan het web. Het bestand 'setup.exe' bestaat al op dit web.

U kunt voorkomen dat bestanden worden vergrendeld door de share alleen-lezen te maken voor de eindgebruikers. Als documenten echter op de share staan, worden ze ook alleen-lezen voor de eindgebruikers.

Vereisten voor Microsoft Office zijn niet geïnstalleerd

U kunt .NET Framework, de Visual Studio Tools voor Office-runtime en de primaire assembly's van Office toevoegen aan uw installatiepakket als vereisten die zijn geïmplementeerd met uw Office-oplossing. Zie Een computer configureren voor het ontwikkelen van Office-oplossingen en instructies voor het installeren van primaire assembly's van Office voor informatie over het installeren van de primaire interop-assembly's van Office.

Publiceren met Localhost kan installatieproblemen veroorzaken

Wanneer u de publicatie- of installatielocatie voor oplossingen op documentniveau gebruikt http://localhost , converteert de wizard Publiceren de tekenreeks niet naar de echte computernaam. In dit geval moet de oplossing op de ontwikkelcomputer worden geïnstalleerd. Als u geïmplementeerde oplossingen wilt maken, gebruikt u IIS op de ontwikkelcomputer de volledig gekwalificeerde naam voor alle HTTP/HTTPS/FTP-locaties in plaats van localhost.

Assembly's in de cache worden geladen in plaats van bijgewerkte assembly's

Fusion, het .NET Framework assembly-laadprogramma, laadt de kopie in de cache van assembly's wanneer het projectuitvoerpad zich op een netwerkbestandsshare bevindt, de assembly is ondertekend met een sterke naam en de assemblyversie van de aanpassing verandert niet. Als u een assembly bijwerkt die aan deze voorwaarden voldoet, wordt de update niet weergegeven wanneer u het project de volgende keer uitvoert omdat de kopie in de cache wordt geladen.

U kunt Visual Studio zo configureren dat Fusion assembly's downloadt telkens wanneer het project wordt uitgevoerd.

Assembly's downloaden in plaats van kopieën in de cache te laden

  1. Selecteer Project,< ProjectName> Properties in de menubalk.
  2. Selecteer Assembly-gegevens op de pagina Toepassing.
  3. Stel het revisienummer, derde veld van de assemblyversie, in op een jokerteken (*). Bijvoorbeeld '1.0.*'. Selecteer vervolgens de knop OK .

Nadat u de assemblyversie hebt gewijzigd, kunt u uw assembly blijven ondertekenen met een sterke naam, waarna Fusion de meest recente versie van de aanpassing laadt.

Notitie

Vanaf Visual Studio 2017 treedt er een buildfout op als u jokerkaarten in de assemblyversie probeert te gebruiken. Dit komt doordat jokerkaarten in de assemblyversie de msBuild Deterministische functie breken. U wordt gevraagd de jokertekens uit de assemblyversie te verwijderen of determinisme uit te schakelen. Zie voor meer informatie over de deterministische functie: Algemene eigenschappen van HET MSBuild-project en pas uw build aan

De installatie mislukt wanneer de URI tekens bevat die geen US-ASCII zijn

Wanneer u een Office-oplossing publiceert naar een HTTP/HTTPS/FTP-locatie, kan het pad geen Unicode-tekens bevatten die zich niet in US-ASCII bevinden. Dergelijke tekens kunnen inconsistent gedrag veroorzaken in het installatieprogramma. Gebruik US-ASCII-tekens voor het installatiepad.

Vragen om handmatig verwijderen wordt weergegeven wanneer u een oplossing publiceert en installeert op de ontwikkelcomputer

Wanneer u een Office-oplossing bouwt, wordt de ingebouwde versie automatisch geregistreerd. Als u eerder dezelfde oplossing op uw ontwikkelcomputer hebt gepubliceerd en geïnstalleerd, detecteert Visual Studio Tools voor Office Runtime dat het installatiepad voor de gepubliceerde versie en de ingebouwde versie anders zijn nadat de oplossing opnieuw is gebouwd, herbouwd of gepubliceerd. Het foutbericht geeft aan dat de aanpassing niet kan worden geïnstalleerd omdat er momenteel een andere versie is geïnstalleerd en niet kan worden geüpgraded vanaf deze locatie. De registersleutels worden bijgewerkt wanneer een oplossing opnieuw wordt opgebouwd. Daarom moet u de vorige versie verwijderen voordat u de nieuwe versie publiceert, debugt of uitvoert.

Als u wilt voorkomen dat het bericht wordt weergegeven, maakt u een ander gebruikersaccount op uw ontwikkelcomputer om uw implementatie te testen. Als alternatief kunt u de versie verwijderen uit de lijst met geïnstalleerde programma's op de computer voordat u de oplossing de volgende publicatie, foutopsporing of herbouwt.

Niet-onderscheute uitzondering of methode is niet gevonden bij het installeren van een oplossing

Wanneer u Office-oplossingen installeert door het implementatiemanifest (een .vsto-bestand) te openen, worden er mogelijk foutberichten weergegeven Office-app licatie, document of werkmap:

  • De methode is niet gevonden.
  • MissingMethodException.
  • Ondeugende uitzondering.

Installeer de oplossing door het installatieprogramma uit te voeren om deze foutberichten te voorkomen.

Wanneer u de oplossing installeert zonder het installatieprogramma uit te voeren, controleert het installatieprogramma niet op vereisten of installeert. Het installatieprogramma controleert op de juiste versie van de vereisten en installeert deze indien nodig.

Manifestregistersleutels voor wijzigingen in invoegtoepassingen nadat een InstallShield Limited Edition-project is gebouwd

De registersleutel van het manifest dat deel uitmaakt van een VSTO-installatieprogramma, verandert soms van .vsto in .dll.manifest wanneer u een InstallShield Limited Edition-project bouwt.

Als u dit probleem wilt omzeilen, maakt u het InstallShield Limited Edition-project in een andere oplossing of gebruikt u CompanyName.AddinName als de waarde van de registersleutel die de naam van de VSTO-invoegtoepassing bevat.

Het ClickOnce-installatieprogramma voor uw Office-oplossing installeert niet de primaire interoperabiliteitsassembly's

Wanneer u het installatieprogramma uitvoert dat ClickOnce voor uw Office-oplossing maakt, wordt het installatieprogramma voor de primaire interopassembly's van Office alleen uitgevoerd als er al geen PIA's zijn geïnstalleerd.

Als het installatieprogramma de PIA's niet correct installeert, installeert u deze handmatig door het installatiebestand met de naam o2007pia.msi uit te voeren vanuit de installatiemap.

Office-oplossingen opnieuw installeren zorgt voor een argument buiten bereikuitzondering

Wanneer u een Office-oplossing opnieuw installeert, wordt er mogelijk een ArgumentOutOfRangeException uitzondering weergegeven met het volgende foutbericht: Het opgegeven argument ligt buiten het bereik van geldige waarden.

Deze situatie treedt op als de behuizing voor de URL voor de installatielocatie anders is. Deze fout wordt bijvoorbeeld weergegeven als u een Office-oplossing voor http://fabrikam.com/ExcelSolution.vsto de eerste keer hebt geïnstalleerd en vervolgens de tweede keer hebt gebruikt http://fabrikam.com/excelsolution.vsto .

Als u wilt voorkomen dat het bericht wordt weergegeven, gebruikt u dezelfde behuizing wanneer u Office-oplossingen installeert.

Kan een ClickOnce-oplossing niet installeren door het implementatiemanifest vanaf het web te openen

Gebruikers kunnen Office-oplossingen installeren door het implementatiemanifest te openen vanaf het web. Sommige installaties van Internet Information Services (IIS) blokkeren echter de bestandsextensie .vsto . U moet het MIME-type in IIS definiëren voordat u het gebruikt om een Office-oplossing te implementeren.

Zie Een MIME-type (IIS7) toevoegen voor informatie over het definiëren van het MIME-type in IIS 7.

Stel de extensie in op .vsto en het MIME-type op application/x-ms-vsto.

Verwijzingen