Este artículo es un artículo espejo de traducción automática, por favor haga clic aquí para saltar al artículo original.

Vista: 37223|Respuesta: 1

[Fuente] aspose.words para generar exámenes

[Copiar enlace]
Publicado en 8/4/2016 16:44:24 | | |

Recientemente, hice un proyecto de agrupación de artículos en línea. Las funciones principales incluyen la composición tipográfica, la vista previa y la creación de exámenes. Cuando se trata de las operaciones de word al principio, una cosa que me viene a la mente es el componente COM de oficina para operar word. Tardamos unas dos semanas en escribir el código de todo el sistema. Luego empecé a hacer pruebas repetidamente, me sentí bien localmente, pude generar un examen de texto sin problemas, y el rendimiento fue aceptable. Así que no podía esperar para lanzarlo al servidor.

El primero es que un componente con CLSID {000209FF-0000-0000-C000-0000000046} en la fábrica de COM falla debido al siguiente error: 8000401a El sistema no puede iniciar el proceso del servidor porque el ID de configuración es incorrecto. Por favor, comprueba el nombre de usuario y la contraseña. (Excepción de HRESULT:0x8000401A).

En primer lugar, todos estos problemas son causados por permisos, y la solución es simplemente configurar los permisos. No solo es útil para Excel y Word, sino también para todos los productos de Office.

Para ir al grano, primero, introduce dcomcnfg en la ejecución, abre el gestor de servicios componente->componente servicio->mi ordenador->DCOM-> encuentra la aplicación correspondiente de Microsoft Excel/documento Microsoft Word 97-2003, y luego haz clic derecho en el atributo para activar el permiso de arranque, es suficiente para darle OK. -------- no hay problema, este problema está resuelto.



Hablemos de la segunda situación: "Problema de rendimiento": dado que nuestro sistema es el siguiente subsistema de nuestra web. Así que hay una base de usuarios determinada. El sistema fue accedido por un gran número de usuarios en cuanto se puso en marcha. Al principio, se agrupaban cuatro o quinientos periódicos al día, y poco a poco el volumen de artículos fue creciendo cada vez más, lo que marcó el inicio de problemas con el sistema. La primera es que hay muchos procesos winWord.exe en el proceso. No puede acabar. Aunque el código del sistema contiene el proceso Quit y recicla recursos, el problema nunca se resuelve. La consecuencia de un gran número de procesos winword.exe es que el servidor se ralentiza. Debería requerir especialmente memoria para este componente.

No hay forma de resolver el problema. El último rogue fue escribir un servicio de temporización que mató el proceso de winword que no estaba funcionando. Esto trata los síntomas pero no la causa raíz. 、



Aquí quiero decir que Microsoft Office es un software de aplicación de escritorio desarrollado principalmente para usuarios corrientes, tiene elementos de interfaz de usuario (interfaz de usuario) muy ricos y es un conjunto de software de ejecución local puro o software cliente. La interfaz de automatización de Word está diseñada principalmente para facilitar llamadas a aplicaciones por ventana. Por ejemplo, aplicaciones nativas desarrolladas por Delphi, VB, C#, Winform, etc. Aunque es posible forzar que Visible sea falso y Word puede ejecutarse en código del lado del servidor, sigue surgiendo muchos problemas complicados.

1. ASP.NET se basa en la arquitectura B/S. En la arquitectura B/S, el acceso de usuario es concurrente, lo que significa que N usuarios a menudo hacen solicitudes a una página de servidor al mismo tiempo. En este caso, la llamada de automatización de Word suele fallar de vez en cuando.

2. Debido a la operación de interfaz oculta, algunas interfaces que implican interfaces que pueden llamarse correctamente en el programa de ventana fallarán en llamar en el lado del servidor, o incluso se bloquearán, lo que a menudo llevará a procesos muertos.

3. Debido a que Word es un programa de escritorio complejo y no cumple los estándares de simplicidad y eficiencia de los programas generales de servicios web, es lento de ejecutarse en el lado del servidor y consumirá muchos recursos (CPU, memoria), especialmente porque no puede soportar un gran número de usuarios para acceder al mismo tiempo, y los recursos se agotarán rápidamente.

4. La mayoría de los desarrolladores están relativamente poco familiarizados con la tecnología COM, y a menudo hay algunos errores de código al programar y llamar a la interfaz de Word, y es difícil comprobar el problema, que es un factor frecuente que provoca procesos inactivos. Los procesos sin Word solo consumen recursos del servidor, sino que a menudo hacen que las páginas del servidor no creen nuevos objetos de automatización de Word y sigan funcionando. Algunos internautas propusieron una solución de proceso muerto: programar para eliminar el proceso muerto de Word, que es una práctica de tratar los síntomas pero no la causa raíz; el proceso muerto de Word ha desaparecido, pero el cierre anormal de Word hará que muchos recursos no puedan liberarse a tiempo. Es difícil decir cuánto durará un servidor web así.



Para resolver estos problemas, tras una investigación y comparación exhaustivas, el autor descubrió que existe un componente componente aspose.words en Internet, que elimina completamente los problemas anteriores y se recomienda compartirlo contigo.



A continuación compartiré parte del código operativo del componente aspose.words con la esperanza de que sea útil para quienes lo necesiten





Enlace original: http://blog.csdn.net/fraing/article/details/8989736




Anterior:[Ayuda] Si quieres crear una página web, puedes usar HTML para ayudarme a modificar el código fuente de la siguiente página. Pide ayuda
Próximo:Aspose.Words para generar documentos PDF
Publicado en 3/5/2020 9:07:08 |
Buen post, útil
Renuncia:
Todo el software, materiales de programación o artículos publicados por Code Farmer Network son únicamente para fines de aprendizaje e investigación; El contenido anterior no se utilizará con fines comerciales o ilegales; de lo contrario, los usuarios asumirán todas las consecuencias. La información de este sitio proviene de Internet, y las disputas de derechos de autor no tienen nada que ver con este sitio. Debes eliminar completamente el contenido anterior de tu ordenador en un plazo de 24 horas desde la descarga. Si te gusta el programa, por favor apoya el software genuino, compra el registro y obtén mejores servicios genuinos. Si hay alguna infracción, por favor contáctanos por correo electrónico.

Mail To:help@itsvse.com