我现在几乎试了所有方法,对word或是excel的asp.net操作都还是不行,包括思归大侠给的提示
PRB: Office Application Does Not Quit After Automation from Visual Studio .NET Client
http://support.microsoft.com/default.aspx?scid=kb;EN-US;Q317109
这是windows应用程序形式,用到asp.net上还是会产生杀不掉的winword.exe进程。我现在想请教,编写这种控制word的组件,需要些什么方面得知识?是不是需要掌握
com,ActiveX的知识?这种控件可否用remoting做?谢谢!

解决方案 »

  1.   

    这是老问题了,不建议在服务器端打开WORD、EXCEL之类的进程,否则可能会死的很难看的。
    不知道你的目的是什么,如果你只是想获取用户在WORD或EXCEL中输入的数据,那么最最简洁的方法是用VBA写宏,其实就是将OFFICE当作客户端,直接操作数据库。
    估计你做的是B/S结构的系统吧,可能希望在IE中直接打开WORD或EXCEL,这样的话用户的身份确认就比较讨厌了。当然,可以在WORD、EXCEL中再做个登录框(用户会很烦的),或者干脆用AD帐号。
    我没有做过这种途径的文件上传,我指的是IE中打开EXCEL,然后直接“保存”到服务器上,望高手指教。
      

  2.   

    我现在想做的架构是这样:
    网站服务器A,webservice服务器B , 数据库服务器C,我客户端浏览网页,现在需要做这样一件事:B 从C获取数据,然后需要放到一个word文档中,这个文档是在B上生成的,客户端需要得到这个文档的打印的文档(可以不用保存在客户端上,就好像sharepoint那种在IE打开服务器的文档那样)。现在就是如何布置这个程序,如果用组件操作B上的word,应该怎么做?具体步骤怎么样?
    小弟对com和activex都不熟,remoting还好点,希望高手们详细一点。谢谢!
      

  3.   

    那你就是在服务器端操控WORD了,肯定要用到"Microsoft Word"对象来打开一个WORD文件,然后写数据,然后保存,然后释放WORD,然后推到客户端。这样做虽然能行,但是真的很危险,很可能关闭不了进程。你所看到的在IE中打开的WORD或者EXCEL文件,其实文件并不在服务器上,而是已经从服务器端下载到你本地的系统的缓冲中了,所以这时候用户操纵的不是你服务器上的文件,而是他自己硬盘上的。我还是建议你找个折中的解决方案变通一下吧。比如word文档不在服务器上填充数据,而是在客户端填充。
      

  4.   

    谢谢nonesharp(无锋) 
    但是,我现在的确是需要用B/S架构,所以word文档应该是在webservice服务器上填充。
    你看可不可以用控件的方式操纵服务器上的word,ZHANG9652(剑神独孤求败)说他已经搞定了用控件操作服务器上的word,他用的vb写的activex控件,我现在就想用remoting来实现这个控件。
      

  5.   

    写是100%可以写的,我在.NET环境下倒没试过,前年做的一个项目中,我偷懒用EXCEL来做报表,用的就是这种思路。但是我总是发现在服务器端打开EXCEL,然后填充数据,然后释放对象,然而有时候总是释放不了,会弄出好几个EXCEL进程,最后我无奈只好用了一些偷巧的方法让它在客户端填充数据,用户是感觉不出的。
      

  6.   

    可以发给我一份吗?
    [email protected]
      

  7.   

    我现在面临的也是这样的问题.可以给在下一份吗?
    [email protected]
      

  8.   

    我现在也遇到这样的问题,谢谢,能发给我一份吗?
    [email protected]
      

  9.   

    急需一份,我也要一份,谢谢你
    [email protected]
      

  10.   

    急需一份,我也要一份,谢谢你 
    [email protected]