C# 在MS Office不可用的计算机上使用Office.Interop.Excel';t安装

C# 在MS Office不可用的计算机上使用Office.Interop.Excel';t安装,c#,excel,com,office-interop,C#,Excel,Com,Office Interop,我有一个使用Microsoft.Office.Interop.Excel的应用程序,当我在没有任何版本的MS Office的计算机上部署它时,我会遇到以下错误 我尝试安装VSTOR,如本so答案所示 但这并没有解决问题 您需要下载并安装Microsoft Office{year}:主互操作程序集-免费。您需要下载并安装Microsoft Office{year}:主互操作程序集-免费。如果未安装MS Office,则无法使用Microsoft互操作库。您可能希望查看其他选项来读取Excel或W

我有一个使用Microsoft.Office.Interop.Excel的应用程序,当我在没有任何版本的MS Office的计算机上部署它时,我会遇到以下错误

我尝试安装VSTOR,如本so答案所示
但这并没有解决问题

您需要下载并安装Microsoft Office{year}:主互操作程序集-免费。

您需要下载并安装Microsoft Office{year}:主互操作程序集-免费。

如果未安装MS Office,则无法使用Microsoft互操作库。您可能希望查看其他选项来读取Excel或Word文件。有许多免费和(付费)的C#库可用于此目的,例如:


如果未安装MS Office,则无法使用Microsoft Interop库。您可能希望查看其他选项来读取Excel或Word文件。有许多免费和(付费)的C#库可用于此目的,例如:


如果您只需要使用开放式XML文档(*.xSLX)工作,可以考虑使用开放式XML SDK。有关更多信息,请参阅

如果是二进制文件格式,您需要使用任何不需要在计算机上安装Office/Excel的第三方组件

请特别注意以下事实:

Microsoft目前不建议也不支持从任何无人参与、非交互的客户端应用程序或组件(包括ASP、ASP.NET、DCOM和NT服务)自动化Microsoft Office应用程序,因为Office在此环境中运行时可能会表现出不稳定的行为和/或死锁。

如果您正在构建一个在服务器端上下文中运行的解决方案,那么您应该尝试使用安全的组件来无人值守地执行。或者,您应该尝试找到至少允许部分代码在客户端运行的替代方案。如果使用服务器端解决方案中的Office应用程序,该应用程序将缺少许多成功运行所需的功能。此外,您将面临整体解决方案稳定性方面的风险


在文章中阅读更多关于这方面的内容 如果是二进制文件格式,您需要使用任何不需要在计算机上安装Office/Excel的第三方组件

请特别注意以下事实:

Microsoft目前不建议也不支持从任何无人参与、非交互的客户端应用程序或组件(包括ASP、ASP.NET、DCOM和NT服务)自动化Microsoft Office应用程序,因为Office在此环境中运行时可能会表现出不稳定的行为和/或死锁。

如果您正在构建一个在服务器端上下文中运行的解决方案,那么您应该尝试使用安全的组件来无人值守地执行。或者,您应该尝试找到至少允许部分代码在客户端运行的替代方案。如果使用服务器端解决方案中的Office应用程序,该应用程序将缺少许多成功运行所需的功能。此外,您将面临整体解决方案稳定性方面的风险


在文章中阅读更多关于这方面的内容

你打算用Excel做什么?你能说得更具体一点吗?我只想从excel文件(xls和xlsx)中读取数据@EugeneAstafiev,你认为我需要按照JacoDeGroot的回答中的建议使用第三方库重写代码吗?我在下面留下了我的答案。你到底要用excel做什么?你能说得更具体些吗?我只想从excel文件(xls和xlsx)中读取数据@EugeneAstafiev,你认为我需要按照JacoDeGroot的回答中的建议使用第三方库重写代码吗?我在下面留下了我的答案。我最终使用了NPOI。谢谢@EugeneI最后使用了NPOI。谢谢@Eugene