一个关于c#操纵word进程的问题,难,请高手帮忙
一个关于c#操纵word进程的问题,难,请高手帮忙
一个ASP.net应用程序,现在并发200用户同时访问服务器,请求系统某一功能,功能描述:把某一web页面内容,输出生成到一个word文件中。
当系统只有一个人访问的时候,请求系统这一功能,没有问题,打开服务器任务管理器,能看到有一个winword.exe进程(我的系统是WIN2003)。
但是,当系统并发200或更多用户的时候,瞬间,服务器任务管理器,就会出现200个或更多word进程,就是一个用户请求产生一个word进程,这个时候,服务器cpu\内存资源,就会被耗尽。
虽然,我在生成WORD文件后,立即关闭该WORD进程,但是,那个瞬间,服务器资源耗尽会产生堵塞,服务器无法处理其他事情,这样很容易崩溃的。
已经听人说:先判断系统进程有没有WORD进程,如果有,当用户来生成WORD的时候,就不重新开WORD进程,即使200个用户并发也没事,都直接用这个进程。
如果没WORD进程,当有用户来生成WORD,就开一个WORD进程来使用,后面再来的用户或更多并发用户,也都使用这个新开的进程。
我现在的问题就是:先判断系统进程里有没有WORD进程,或关闭它,这个用C#实现,比较简单的。
可是,当我知道系统进程里已经有WORD进程,当有用户来请求生成WORD功能的时候,我就不需要重新开进程了,那么我怎么利用这个,系统已有的WORD进程了,怎么操作它,来实现这个生成WORD的功能了?(听说,用WORD句柄什么的,可以操纵,可是我不会WINDOWS编程,请大家帮忙,在C#里怎么实现。。。)
请高手指点一下,万分感谢!!!