Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

546
Vistas
La aplicación Visual Studio 2015 Isolated Shell no se compilará en Visual Studio 2022

Con el lanzamiento de Visual Studio 2022, mi equipo está tratando de cambiar para usarlo en lugar de VS2019. La mayoría de nuestras soluciones se compilan sin problemas. Sin embargo, tenemos una aplicación que se desarrolló con .NET 4.8 y Visual Studio 2015 Shell (aislado). Esta aplicación no se compilará con éxito. Recibo los siguientes errores:

Error CS1747 No se pueden incrustar tipos de interoperabilidad del ensamblado 'envdte80, Version=17.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' porque falta el atributo 'System.Runtime.InteropServices.GuidAttribute'.

Error CS1759 No se pueden incrustar tipos de interoperabilidad del ensamblado 'envdte80, Version=17.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' porque falta el atributo 'System.Runtime.InteropServices.ImportedFromTypeLibAttribute' o 'System.Runtime.InteropServices. Atributo PrimaryInteropAssemblyAttribute'.

Verifiqué que la referencia EnvDTE80 tiene la propiedad Embed Interop Types configurada en False y Copy Local está configurada en True, al igual que cuando se compila correctamente la solución con VS2019.

¿Qué ha cambiado con VS2022 que podría causar este error?

Otra cosa que encuentro extraña es que los errores se refieren a la versión 17.0.0.0, pero la versión del paquete EnvDTE80 NuGet es 8.0.3.

Para la referencia de EnvDTE80.dll en VS2019...

  • La propiedad Path apunta a C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\Common7\IDE\PublicAssemblies\EnvDTE80.dll. La versión del archivo en esta carpeta es 8.0.50727.932
  • La propiedad HintPath en .csproj apunta a la carpeta del paquete NuGet ..\packages\EnvDTE80.8.0.3\lib\net10\EnvDTE80.dll. La versión del archivo en esta carpeta es 8.0.50727.932

Para la referencia de EnvDTE80.dll en VS2022...

  • La propiedad Path apunta a la carpeta del paquete NuGet ..\packages\EnvDTE80.8.0.3\lib\net10\EnvDTE80.dll. La versión del archivo en esta carpeta es 8.0.50727.932
  • La propiedad HintPath en .csproj también apunta a la carpeta del paquete NuGet ..\packages\EnvDTE80.8.0.3\lib\net10\EnvDTE80.dll.
  • El archivo EnvDTE80.dll se encuentra en C:\Program Files\Microsoft Visual Studio\2022\Professional\Common7\IDE\PublicAssemblies\EnvDTE80.dll, pero la versión del archivo es 17.0.31822.380.

¿Por qué el mensaje de error se refiere a la versión 17.0.0.0 cuando el proyecto hace referencia a v8.0.3? ¿Es este un problema de Visual Studio de 64 bits frente a un proyecto de 32 bits? ¿Es un problema del archivo .targets?

over 4 years ago · Santiago Trujillo
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda