如何包含office dll?

时间:2010-11-02 10:34:18

标签: c# office-interop

我开发了一个办公工具,它在我的电脑中运行得很好。但是,当我将代码移植到另一台计算机时,代码不起作用。它显示不同的错误消息不同的时间。我创建了一个安装程序,并且我的exe导出了office.dll,excel.dll和powerpoint.dll但是它不起作用。我的计算机有办公室2003,但目标计算机有2007年和2003年。

现在我怀疑可能在目标计算机上,当我的应用程序调用任何excel函数时,它由该计算机的GAC提供,而不是从我的计算机中导出dll。

为此,我有兴趣重构代码:这次我不会使用任何“using”子句让操作系统包含什么,而不是我想编写一个汇编类,它将从特定的加载dll位置(我相信这样就不会混淆2007/2003 +包含excel库的地方)....

我该怎么办?请帮忙。

我要问的示例代码如下:

using "System.NECESSARY.LIBRARY.TO.IMPORT.DLL"

void main()
{
  [dllImport("office.dll") OTHER_PARTS_GOES_HERE]

  CLASS application= new excel() /* excel class derivess from included office.dll */
}

1 个答案:

答案 0 :(得分:0)

更新:我已经安装了Dot-net 4.0,现在问题解决了:-)因为dotnet 4.0正确导出了我需要的所有dll而且只在目标机器上使用那些导出的dll ...所以不再需要黑客这个话题。