我的ASP.Net-C#应用程序通过名称Microsoft.Office.Interop.Word.dll V14.0.0.0与mailmerge和dll一起使用。我的桌面上(安装办公室的地方)都很好。然而,当该应用程序部署在生产机上,下面的错误被抛出:Microsoft.office.interop.word.dll可以在没有安装Office的情况下工作吗?
System.Runtime.InteropServices.COMException (0x80040154): Retrieving the COM class factory for component with CLSID {000209FF-0000-0000-C000-000000000046} failed due to the following error: 80040154 Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG)).
当类被注册,以下错误被发现:
Microsoft.Office.Interop.Word.dll was loaded but the entry-point DLLRegisterServer was not found. Make sure, this is a valid dll or OCX and try again.
我该如何解决这个问题? Office套件无法安装在生产机器上。
如果使用Interop,则需要安装Office。你想做什么? – wgraham
从ASP.NET或其他服务器技术使用Office Interop是一个可怕的想法。这些API被编写用于桌面应用程序,用于自动化Office(一套桌面应用程序)。服务器应用程序在许多方面有所不同,因此在其中使用Office Interop是非常非常糟糕的主意。它也不受Microsoft的支持,并可能违反您的Office许可证。请参阅[服务器端自动化办公室的注意事项](http://support.microsoft.com/kb/257757) –
嗨,John, 很抱歉回复非常旧的帖子,但需要关于办公室互操作的替代方案的建议。 在ASP.NET网站中,我想导出一些图像和数据在PowerPoint中,但在看完这篇文章后,我很困惑现在使用什么..请建议.. – Rushikesh