gpt4 book ai didi

.NET Office 互操作使用版本独立的 Office

转载 作者:行者123 更新时间:2023-12-02 18:56:56 26 4
gpt4 key购买 nike

我开发了一个将数据导入 Microsoft Excel 的应用程序。

我使用 VS2005 + .NET 2.0,并且我的计算机上安装了 Microsoft Office 2007 (Office 12)。

如果我在我的计算机上运行编译的应用程序,它可以正常工作,但是当我将应用程序部署到其他计算机时,如果使用较低版本(Office 2000),我会收到错误:

无法加载文件或程序集 Microsoft.Office.Interop.Excel,版本 12.0.0.0

无论计算机上是否安装了 Office (Excel),我如何才能使我的应用程序正确执行?

谢谢。

一些更新:我将引用的两个 DLL,即 Microsoft.Office.Interop.Excel.dll(版本 12.0.0.0)和 Office.dll(版本 12.0.0.0)放置在我的 bin 文件夹中。我已将此引用的属性设置为 Copy Local = True,当我编译应用程序时,DLL 将被复制到调试/发布文件夹中。

现在,当我尝试运行该应用程序时,我已经摆脱了错误:“无法加载文件或程序集 Microsoft.Office.Interop.Excel,版本 12.0.0.0”

但是出现了另一个错误:System.AccessViolationException:尝试读取或写入 protected 内存。这通常表明其他内存已损坏。 在 Microsoft.Office.Interop.Excel.WorkbookClass.SaveAs(对象文件名、对象文件格式、对象密码、对象 WriteResPassword、对象 ReadOnlyRecommended、对象 CreateBackup、XlSaveAsAccessMode AccessMode、对象冲突解决方案、对象 AddToMru、对象 TextCodepage、对象 TextVisualLayout、对象本地)

那么,我如何实际创建一个应用程序,无论安装的 Office 版本如何,都能够将数据表数据导出到 Excel 中?

谢谢。

最佳答案

看看MS Office Wrapper for .NET - 它的包装独立于 Office 版本(testeod MS Office 97 - 2007 且有效)。

关于.NET Office 互操作使用版本独立的 Office,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1242345/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com