Solución de problemas de implementación de soluciones de Office
Se aplica a: Visual Studio
En este artículo se presenta cómo resolver problemas comunes que puede encontrar al implementar soluciones de Office.
La información de este artículo se aplica a proyectos de nivel de documento y proyectos de complemento de Visual Studio Tools para Office (VSTO). Consulte las Características disponibles por tipo de proyecto y aplicación de Office.
Solución de problemas de soluciones de Office mediante el visor de eventos
Puede usar el visor de eventos en Windows para ver los mensajes de error capturados por el entorno de ejecución de Visual Studio Tools para Office al instalar o desinstalar soluciones de Office. Puede usar estos mensajes desde el registrador de eventos para resolver los problemas de instalación e implementación. Para obtener más información, consulte Registro de eventos para soluciones de Office.
Cambiar el nombre del ensamblado provoca conflictos
Si cambia el valor nombre del ensamblado en la página Aplicación del Diseñador de proyectos después de haber implementado una solución, las herramientas de publicación modificarán el paquete de instalación para tener un archivo Setup.exe y dos manifiestos de implementación. Si implementa dos archivos de manifiesto, podrían producirse las siguientes condiciones:
- Si el usuario final instala ambas versiones, la aplicación cargará ambos complementos VSTO.
- Si el complemento VSTO se instaló antes de cambiar el nombre del ensamblado, el usuario final nunca recibirá actualizaciones.
Para evitar estas condiciones, no cambie el valor nombre del ensamblado de la solución después de implementar la solución.
La comprobación de actualizaciones tarda mucho tiempo
Visual Studio 2010 Tools para Office runtime proporciona una entrada del Registro que los administradores pueden usar para establecer el valor de tiempo de espera para descargar los manifiestos y la solución.
Cómo establecer el valor de tiempo de espera
En el registro, navegue a la clave siguiente:
HKEY_CURRENT_USER\Software\Microsoft\VSTA
En la subclave AddInTimeout , establezca el valor de tiempo de espera en milisegundos.
Si la subclave AddInTimeout no existe, créela como DWORD.
No se puede actualizar ni publicar en un recurso compartido de archivos de red
Las soluciones de Office que se encuentran en un recurso compartido de archivos de red pueden mostrar un mensaje engañoso durante las actualizaciones si el archivo Setup.exe de la solución está bloqueado en un proceso mientras se publica la actualización. El mensaje podría decir lo siguiente: "No se puede agregar 'setup.exe' al sitio web. Ya existe un archivo 'setup.exe' en este sitio web."
Para ayudar a evitar el bloqueo de archivos, puede hacer el recurso compartido de solo lectura a los usuarios finales. Sin embargo, si los documentos están en el recurso compartido, también se convertirán en de solo lectura para los usuarios finales.
Los requisitos previos para Microsoft Office no están instalados
Puede agregar .NET Framework, el entorno de ejecución de Visual Studio Tools para Office y los ensamblados de interoperabilidad primarios de Office al paquete de instalación como requisitos previos que se implementan con la solución de Office. Para obtener información sobre cómo instalar los ensamblados de interoperabilidad primarios, vea Configurar un equipo para desarrollar soluciones de Office y Cómo: Instalar ensamblados de interoperabilidad primarios de Office.
La publicación mediante Localhost puede provocar problemas de instalación
Cuando se usa http://localhost
como ubicación de publicación o instalación para soluciones de nivel de documento, el Asistente para publicación no convierte la cadena en el nombre de equipo real. En este caso, la solución debe instalarse en el equipo de desarrollo. Para que las soluciones implementadas usen IIS en el equipo de desarrollo, use el nombre completo para todas las ubicaciones HTTP/HTTPS/FTP en lugar de localhost.
Los ensamblados almacenados en caché se cargan en lugar de ensamblados actualizados
Fusion, el cargador de ensamblados de .NET Framework, carga la copia en caché de los ensamblados cuando la ruta de acceso de salida del proyecto se encuentra en un recurso compartido de red, el ensamblado se firma con un nombre seguro y no cambia la versión del ensamblado de la personalización. Si actualiza un ensamblado que cumple estas condiciones, la actualización no aparecerá la próxima vez que se ejecute el proyecto, ya que se carga la copia en caché.
Puede configurar Visual Studio para que Fusion descargue los ensamblados cada vez que se ejecute el proyecto.
Cómo descargar ensamblados en lugar de cargar copias almacenadas en caché
- En la barra de menús, seleccione Proyecto,< Propiedades de ProjectName>.
- En la página Aplicación , seleccione Información de ensamblado.
- Establezca el número de revisión, tercer campo, de la versión del ensamblado, en una tarjeta comodín (*). Por ejemplo, "1.0.*". Después, seleccione el botón Aceptar.
Después de cambiar la versión del ensamblado, puede continuar para firmar el ensamblado con un nombre seguro y Fusion cargará la versión más reciente de la personalización.
Nota:
A partir de Visual Studio 2017, si intenta usar caracteres comodín en la versión del ensamblado, se producirá un error de compilación. Esto se debe a que los caracteres comodín de la versión del ensamblado interrumpirán la característica determinista de MSBuild. Se le indicará que quite los caracteres comodín de la versión del ensamblado o deshabilite el determinismo. Para obtener más información sobre la característica Determinista, consulte: Propiedades comunes del proyecto de MSBuild y Personalización de la compilación
Se produce un error en la instalación cuando el URI tiene caracteres que no son US-ASCII
Al publicar una solución de Office en una ubicación HTTP/HTTPS/FTP, la ruta de acceso no puede tener caracteres Unicode que no estén en US-ASCII. Estos caracteres pueden producir un comportamiento incoherente en el programa de instalación. Utilice los caracteres US-ASCII para la ruta de instalación.
La solicitud de desinstalación manual aparece al publicar e instalar una solución en el equipo de desarrollo.
Al compilar una solución de Office, la versión generada se registra automáticamente. Si ya ha publicado e instalado la misma solución en el equipo de desarrollo, Visual Studio Tools para Office tiempo de ejecución detecta que la ruta de instalación de la versión publicada y la versión compilada son diferentes después de que la solución se cree, recompile o publique. El mensaje de error indica "no se puede instalar la personalización porque otra versión está instalada actualmente y no se puede actualizar desde esta ubicación". Las claves del Registro se actualizan cada vez que se vuelve a generar una solución. Por lo tanto, debe desinstalar la versión anterior antes de publicar, depurar o ejecutar la nueva versión.
Para evitar que aparezca el mensaje, cree otra cuenta de usuario en el equipo de desarrollo para probar la implementación. Como alternativa, puede desinstalar la versión de la lista de programas instalados en el equipo antes de publicar, depurar o volver a compilar la solución.
Error de excepción o método no detectado al instalar una solución
Al instalar soluciones de Office abriendo el manifiesto de implementación (un archivo .vsto), aplicación de Office lication, document o workbook, pueden aparecer mensajes de error para las condiciones siguientes:
- Método no encontrado.
- MissingMethodException.
- Excepción no detectada.
Para evitar estos mensajes de error, instale la solución ejecutando el programa de instalación.
Al instalar la solución sin ejecutar el programa de instalación, el instalador no busca ni instalar los requisitos previos. El programa de instalación comprueba la versión correcta de los requisitos previos y los instala según sea necesario.
Las claves del Registro de manifiesto para complementos cambian después de compilar un proyecto installShield Limited Edition
La clave del Registro de manifiesto que forma parte de un programa de instalación de complementos de VSTO a veces cambia de .vsto a .dll.manifest al compilar un proyecto installShield Limited Edition.
Para evitar este problema, cree el proyecto de InstallShield Limited Edition en una solución distinta o use CompanyName.AddinName como el valor de la clave del registro que contiene el nombre del complemento de VSTO.
El Instalador de ClickOnce para la solución de Office no instala los ensamblados de interoperabilidad principales.
Al ejecutar el programa de instalación que crea ClickOnce para la solución de Office, el programa de instalación para los ensamblados de interoperabilidad primarios (PIA) de Office solo se ejecuta si hay ensamblados ya instalados.
Si el programa de instalación no instala correctamente los PIA, instálelos manualmente ejecutando el archivo del instalador denominado o2007pia.msi desde el directorio de instalación.
Reinstalar soluciones de Office provoca una excepción fuera del intervalo de argumentos
Cuando vuelva a instalar una solución de Office, puede aparecer una excepción ArgumentOutOfRangeException con el siguiente mensaje de error: El argumento especificado está fuera del intervalo de valores válidos.
Esta situación se produce si las mayúsculas y minúsculas de la dirección URL de la ubicación de instalación son diferentes. Por ejemplo, este error aparecería si instaló una solución de Office desde http://fabrikam.com/ExcelSolution.vsto
la primera vez y después usó http://fabrikam.com/excelsolution.vsto
la segunda vez.
Para evitar que aparezca el mensaje, use la misma grafía al instalar soluciones de Office.
No se puede instalar una solución ClickOnce abriendo el manifiesto de implementación desde la web
Los usuarios pueden instalar una solución de Office abriendo el manifiesto de implementación desde la Web. Sin embargo, algunas instalaciones de Internet Information Services (IIS) bloquean la extensión de nombre de archivo .vsto . Debe definir el tipo MIME en IIS antes de usarlo para implementar una solución de Office.
Para obtener información sobre cómo definir el tipo MIME en IIS 7, vea Agregar un tipo MIME (IIS7).
Establezca la extensión en .vsto y el tipo MIME en application/x-ms-vsto.