在没有安装Office的服务器上操作Word文档(ASP.NET)

And*_*rej 20 c# asp.net ms-word

我正在编写一个代码来制作MS Word到HTML系统.谷歌大约半分钟后,我能够找到完全符合我需要的代码.现在..它在ASP.NET开发服务器上脱机工作,但在我上传服务器上的文件时它不起作用.

我看了几个帖子,问题似乎是因为服务器上没有安装MS Office.现在,我不确定它是否已经存在,我仍在使用来自好人@托管的电子邮件(但我认为它没有安装),但我的问题是......

有没有办法让它在没有安装MS Office的情况下工作?我正在使用Microsoft.Office.Interop.Word ver.12./ASP 3.5/C#和我得到的错误是

无法加载文件或程序集"Microsoft.Office.Interop.Word,Version = 12.0.0.0,Culture = neutral,PublicKeyToken = 71e9bce111e9429c"或其中一个依赖项.

感谢您的时间!

chi*_*oro 14

Interop库本身不是一个"工作"库,它只是winword.exe for .NET程序的包装器,因此如果不安装或使用Microsoft Word,使用此库没有任何意义.

相反,您需要找到一个允许操作Word文档的库.如果您可以将文档限制为新格式(docx),那么这将是一项非常简单的任务,例如使用OOXML SDK(也是Stilgar提出的).但也有旧格式的库.

更新:我不得不承认,虽然我确信我之前搜索并找到了一些旧的doc格式的库,但我不能再找到它们了,可能是因为结果列表被docx的许多提议"宠坏了".要明确:

如果您能够坚持使用docx(2007或更高版本)格式,那么您应该这样做.Office Open XML是一种基于ZIP和XML的(或多或少)开放标准,许多工具已经存在并将在未来开发.现在,旧格式的支持要少得多.

如果你也必须使用旧格式,那么Aspose(由Uwe提出)是我找到的唯一库.