Síntomas
Cuando intenta generar información de biblioteca de tipos mediante el ensamblado Microsoft.VisualStudio.Shell.Interop.dll en Microsoft Visual Studio 2008, puede encontrar uno de los síntomas siguientes.
Síntoma 1
Cuando utiliza la herramienta Regasm.exe para generar y registrar una biblioteca de tipos, puede recibir el siguiente mensaje de error:
RegAsm: error RA000: exportador de la biblioteca de tipos detectó un error al procesar "Microsoft.VisualStudio.Shell.Interop.SVsSolutionObject Microsoft.VisualStudio.Shell.Interop". Error: Escriba 'SVsSolutionObject' y 'SVsSolution' tienen el mismo UUID.
Síntoma 2
Cuando utiliza la utilidad de TlbExp.exe para generar una biblioteca de tipos, puede recibir el siguiente mensaje de error:
TlbExp: error TX0000: exportador de la biblioteca de tipos detectó un error al procesar 'Microsoft.VisualStudio.Shell.Interop.SVsSolutionObject Microsoft.VisualStudio.Shell.Interop'. Error: Escriba 'SVsSolutionObject' y 'SVsSolution' tienen el mismo UUID.
Síntoma 3
Un paquete de Visual Studio 2008 implementa una colección de propiedades que expone la propiedad EnvDTE.DTE.Properties . Si la colección es un miembro de un objeto que utiliza un tipo en el ensamblado Microsoft.VisualStudio.Shell.Interop.dll , common language runtime (CLR) no construirá la biblioteca de tipos en memoria necesarias para el ensamblado. Por ejemplo, se producirá un error en la siguiente macro de Visual Studio que hace referencia a la propiedad EnvDTE.DTE.Properties y, a continuación, recibirá un mensaje de error.
Dim proj As Project = DTE.Solution.Projects.Item(1) Dim props As Properties = proj.ConfigurationManager.ActiveConfiguration.Properties
Causa
Este problema se produce porque el atributo ImportedFromTypelib se quitará el ensamblado Microsoft.VisualStudio.Shell.Interop.dll en Visual Studio 2008. El atributo ImportedFromTypelib se quita porque este ensamblado no tiene una biblioteca de tipos asociada. Por lo tanto, el atributo ImportedFromTypelib provoca errores cuando el CLR intenta encontrar una biblioteca de tipos asociada.
Porque se ha quitado el atributo ImportedFromTypelib en Visual Studio 2008, el CLR no puede construir la biblioteca de tipos en memoria necesarias para el ensamblado Microsoft.VisualStudio.Shell.Interop.dll . Este error se produce por duplicado tipo GUID.
Solución
Información de la revisión
Existe un hotfix disponible desde Microsoft. Sin embargo, esta revisión se diseñó para corregir únicamente el problema que se describe en este artículo. Aplíquela sólo a sistemas que experimenten este problema específico. Esta revisión podría ser sometida a comprobaciones adicionales. Por lo tanto, si no se ve muy afectado por este problema, recomendamos que espere a la próxima actualización de software que contenga este hotfix.
Para descargar esta revisión desde MSDN Code Gallery, visite el siguiente sitio Web de Microsoft:
http://code.msdn.microsoft.com/KB946308
Nota: MSDN Code Gallery muestra los idiomas para los que la revisión está disponible. Si no ve su idioma en la lista, es porque la página de recursos de galería de código no está disponible para ese idioma.
Nota: Si se producen problemas adicionales o si se requiere cualquier otra solución, será necesario crear una solicitud de revisión independiente. Los costos habituales de soporte se aplicarán a las preguntas de soporte técnico adicionales y problemas que no califican para esta revisión específica. Para obtener una lista completa de los números de teléfono de servicio al cliente de Microsoft o para crear una solicitud de servicio independiente, visite el siguiente sitio Web de Microsoft:
http://support.microsoft.com/contactus/?ws=support
Requisitos previos
Debe tener instalado para aplicar esta revisión de Visual Studio 2008.
Requisito de reinicio
No es necesario que reinicie el equipo después de aplicar este hotfix.
Información de reemplazo de revisión
Esta revisión no sustituye a ninguna revisión publicada previamente.
Información de archivo
La versión en inglés de esta revisión tiene los atributos de archivo (o atributos del archivo más reciente) mostrados en la tabla siguiente. Las fechas y horas de estos archivos se muestran en la hora Universal coordinada (UTC). Al ver la información del archivo, se convierte en hora local. Para encontrar la diferencia entre la hora UTC y la hora local, utilice la ficha Zona horaria en el elemento de Fecha y hora del Panel de control.
Nombre del archivo |
Versión del archivo |
Tamaño de archivo |
Fecha |
Hora |
Plataforma |
---|---|---|---|---|---|
Microsoft.VisualStudio.Shell.Interop.dll |
7.10.6071.0 |
259152 |
07-Jan-2008 |
15:37 |
x86 |
Estado
Microsoft ha confirmado que se trata de un problema de los productos de Microsoft que se enumeran en la sección "Aplicable a".
Más información
Esta revisión marca todos los GUID duplicados estableciendo el valor de la propiedad ComVisible en false para que el generador de la biblioteca de tipo omitirá los GUID duplicados.
Para obtener más información acerca de la terminología de la actualización de software, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
824684 descripción de la terminología estándar que se utiliza para describir las actualizaciones de software de Microsoft