Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net 使用Microsoft.Office.Interop.Excel等构建的VSTO项目是否可以在未安装Office的计算机上运行?_.net_Excel_Vsto_Office Interop - Fatal编程技术网

.net 使用Microsoft.Office.Interop.Excel等构建的VSTO项目是否可以在未安装Office的计算机上运行?

.net 使用Microsoft.Office.Interop.Excel等构建的VSTO项目是否可以在未安装Office的计算机上运行?,.net,excel,vsto,office-interop,.net,Excel,Vsto,Office Interop,我们目前正在使用SoftArtisans提供的一种工具,从大型机FTPs到我们的文档服务器,生成Excel电子表格 doc服务器上有3.5版本的.Net框架,我的开发包也是如此。不同的是我的机器也有Office2007 所以,今天早上我和一个filewatcher建立了一个服务,使用Interop.Excel制作电子表格,而不需要SoftArtisans 当我在文档服务器上安装并运行时,当我将文件放入以进行转换时,应用程序会阻塞,并说“无法加载文件或程序集'Microsoft.Office.In

我们目前正在使用SoftArtisans提供的一种工具,从大型机FTPs到我们的文档服务器,生成Excel电子表格

doc服务器上有3.5版本的.Net框架,我的开发包也是如此。不同的是我的机器也有Office2007

所以,今天早上我和一个filewatcher建立了一个服务,使用Interop.Excel制作电子表格,而不需要SoftArtisans

当我在文档服务器上安装并运行时,当我将文件放入以进行转换时,应用程序会阻塞,并说“无法加载文件或程序集'Microsoft.Office.Interop.Excel,Version=12.0.0”


是否没有可再发行的软件包或我可以使用的东西?管理层不希望在服务器上安装Office。

据我所知,使用Office互操作程序集的唯一方法是在服务器上安装完整的Office客户端。

Nate的回答是正确的,为了使用Office的PIA,您需要安装Office软件包。每次您请求Excel.Application对象时,这些PIA都会调用Excel可执行文件(在本例中)

还有更多信息,以及Excel XML格式的变通方法。这可能会对您有所帮助。

可以创建/修改Excel工作簿,还附带Windows窗体电子表格控件,该控件可以显示Excel工作簿/图表等。。。您可以免费部署Spreadsheet Gear,并且只需要.NET 2.0即可。除了.NET之外,它不依赖Excel或其他任何东西

您可以了解SpreadsheetGear WinForms控件并下载免费试用版


免责声明:我拥有SpreadsheetGear LLC

我为软件工匠工作;我能问一下是什么促使你离开ExcelWriter的吗?听起来您的情况非常适合我们的产品,它既支持二进制Excel文件,也支持使用Office interop程序集创建的OOXML文件。

Hey here。我最终使用了软工匠。我不确定我们有多少OfficeWriter软件包,但根据License Manager文章,我们有ExcelWriter v6和WordWriter v3。我们有一份包括升级在内的维护合同。有几件事凑在一起造成了一个问题——它必须在03.02立法会议开始之前投入生产,所有服务都在两台机器上运行,他们说这些表可能超过650K行。所以看起来我必须升级到最新版本的ExcelWriter,这样我才能突破我们现在运行的版本的行限制-继续,而且根据我读到的,我们不能在同一台机器上运行旧版本和新版本,所以我必须升级所有服务。我的老板喜欢在我们进入prod之前测试所有东西,甚至是图书馆升级,所以这在时间上是个问题。然后,我去找大型机人员,我们谈了谈,他们说源数据不会超过65K行,所以我只是用我们现有的版本来写。我很难找到好的代码示例,因此我编写的代码最终非常粗糙,但它可以工作。让我恼火的是,当我直接向单元格写入数据时,我不知道如何定义单元格的数据类型(这样我就可以得到style.numberformat来应用),所以我最终在循环中混合了逐行、逐单元格写入(sheet.Cells(row,col.Value=someString),然后用money cols设置为Double构建一个数据表,然后做一个sheet.importData(dt,…)总而言之,这还不错,但从零开始就很沮丧,一下子就冲出了大门。我们将在课程结束后升级,我将能够学习产品并进行重写(希望是:p)。很高兴听到您找到了解决方案。我们在支持站点()上有一些示例代码,在wiki文档()中也有一些示例代码。希望这将是有用的,一旦你有一些喘息的空间,采取第二次通过在您的应用程序。