Delen via


Problemen met VSPackages oplossen

Van toepassing op: Visual Studio

In dit artikel worden veelvoorkomende problemen en tips voor het oplossen van problemen met uw VSPackages geïntroduceerd.

Een VSPackage zorgt ervoor dat Visual Studio niet kan worden gestart

In dit scenario start u Visual Studio in de veilige modus door devenv.exe /safemode in te voeren bij een opdrachtprompt. Tijdens dit proces worden er geen VSPackages geladen, behalve de VSPackages die zijn opgenomen in Visual Studio.

Een VSPackage wordt niet geladen

Probeer een of meer van de volgende stappen om dit probleem op te lossen:

  • Zorg ervoor dat u de registerhoofdmap gebruikt waarin de VSPackage is geregistreerd om uit te voeren, meestal de experimentele registerhoofdmap. Zie Het experimentele exemplaar voor meer informatie.

  • Als vspackage wordt uitgevoerd in de experimentele registerhoofdmap, moet u ervoor zorgen dat u de experimentele versie van Visual Studio uitvoert.

    Als u de experimentele versie wilt uitvoeren, opent u een Visual Studio-opdrachtprompt en voert u devenv /rootsuffix exp in.

  • Controleer uw VSPackage-registervermeldingen. Zie VSPackages registreren en VSPackages beheren voor meer informatie.

  • Open het uitvoervenster van het exemplaar van Visual Studio dat de VSPackage niet kan laden. Informatie over waarom de VSPackage niet kan worden geladen, kan in dat venster worden weergegeven.

    Notitie

    Als u de experimentele versie van Visual Studio start vanuit de IDE (Integrated Development Environment) van Visual Studio, controleert u het uitvoervenster van beide versies.

  • Bekijk het activiteitenlogboek. Zie Instructies voor meer informatie : Het activiteitenlogboek gebruiken.

  • Voor meer informatie over uitzonderingen die door de IDE worden gegenereerd, selecteert u Uitzonderingen in het menu Foutopsporing om de uitzonderingen in te schakelen. Selecteer in het dialoogvenster Uitzonderingen de typen uitzonderingen waarvoor u meer informatie wilt.

Een VSPackage is niet geregistreerd

Zorg ervoor dat de VSPackage-assembly zich op een vertrouwde locatie bevindt. RegPkg kan geen assembly's registreren op een niet-vertrouwde of gedeeltelijk vertrouwde locatie, zoals een netwerkshare in de standaardbeveiligingsconfiguratie van .NET. Hoewel er een waarschuwing wordt weergegeven wanneer een gebruiker een project maakt op een niet-vertrouwde locatie, kan het selectievakje Dit bericht niet opnieuw weergeven voorkomen dat deze waarschuwing opnieuw optreedt.

Een opdracht is niet zichtbaar of er wordt een fout gegenereerd wanneer deze is geselecteerd

Probeer de volgende stappen om dit probleem op te lossen:

  • Voeg de nieuwe of gewijzigde menuopdrachten en deze opdrachten al in de IDE samen door devenv /rootsuffix Exp /setup in te voeren bij de Opdrachtprompt van Visual Studio.

  • Zorg ervoor dat Visual Studio UI.dll voor uw VSPackage kan vinden.

    1. Zoek de CLSID van de VSPackage in de sectie Pakketten van het register:

      HKLM\Software\Microsoft\Visual Studio\<version>\Packages

    2. Controleer of het pad dat is opgegeven door de subsleutel SatelliteDll juist is.

Een VSPackage gedraagt zich onverwacht

Probeer een of meer van de volgende stappen om dit probleem op te lossen:

  • Stel onderbrekingspunten in uw code in.

    Goede uitgangspunten voor foutopsporing zijn de constructor en de initialisatiemethode. U kunt ook onderbrekingspunten instellen in het gebied dat u wilt evalueren, zoals een menuopdracht. Als u onderbrekingspunten wilt inschakelen, moet u worden uitgevoerd onder het foutopsporingsprogramma.

    1. Selecteer Eigenschappen in het menu Project.

    2. Selecteer in het dialoogvenster Eigenschappenpagina's het tabblad Foutopsporing .

    3. Voer in het vak Opdrachtregelargumenten het hoofdachtervoegsel in van de ontwikkelomgeving waarop uw VSPackage is gericht. Als u bijvoorbeeld de experimentele build wilt selecteren, voert u het volgende in: /RootSuffix Exp.

    4. Selecteer in het menu Foutopsporing starten of druk op F5.

      Notitie

      Als u fouten in een project opspoort, maakt of laadt u nu een bestaand exemplaar van uw project.

  • Gebruik het activiteitenlogboek.

    Traceer VSPackage-gedrag door informatie te schrijven naar het activiteitenlogboek op belangrijke punten. Deze techniek is vooral handig wanneer u een VSPackage uitvoert in een retailomgeving. Zie Instructies voor meer informatie : Het activiteitenlogboek gebruiken.

  • Gebruik openbare symbolen.

    Als u de leesbaarheid tijdens foutopsporing wilt verbeteren, kunt u symbolen toevoegen aan het foutopsporingsprogramma:

    1. Navigeer in het menu Extra/Opties naar het dialoogvenster Foutopsporing/symbolen .
    2. Locatie symboolbestand (.pdb) toevoegen: https://msdl.microsoft.com/download/symbols.
    3. Als u de prestaties wilt verbeteren, geeft u een cachemap voor symbolen op, bijvoorbeeld: C:\symbols.

Er ontbreekt een VSPackage of een van de bijbehorende afhankelijkheden

  • Zorg ervoor dat de referentiepaden juist zijn voor beheerde code.

    1. Selecteer Eigenschappen in het menu Project.

    2. Selecteer het tabblad Verwijzingen in het dialoogvenster Eigenschappenpagina's en controleer of alle paden juist zijn. U kunt ook de objectbrowser gebruiken om te bladeren naar de objecten waarnaar wordt verwezen.

      Voor beheerde code kunt u de Fuslogvw.exe (Assembly Binding Log Viewer) gebruiken om de details van mislukte assemblybelastingen weer te geven.

  • Voor niet-beheerde code zoekt u de CLSID van de VSPackage in het registerknooppunt Visual Studio CLSID:

    HKLM\Software\Microsoft\Visual Studio\<version>\CLSID

    Zorg ervoor dat de vermelding InprocServer32 het juiste pad van de VSPackage DLL heeft.

Verwijzingen