5

我在我的 WPF 应用程序中使用 ODP.NET 来访问 Oracle 10g db。我不想在用户计算机上安装 oracle 客户端,所以我将这些 dll 复制到 realese 文件夹:

  • oci.dll
  • ocijdbc11.dll
  • ociw32.dll
  • Oracle.DataAccess.dll
  • orannzsbb11.dll
  • orasql11.dll
  • OraOps11w.dll

  • oraocci11.dll - 706 KB

  • oraociei11.dll - 126,55 KB

我认为最后两个 dll oraocci11.dll 和 oraociei11.dll 具有相同的功能,但 oraociei11.dll 真的很大。

我想从我的项目中删除 oraociei11.dll。我做到了,但如果我在 realease 文件夹中没有 oraociei11.dll,应用程序会崩溃。

也许我错了,他们没有相同的功能

可以删除此 dll。

4

1 回答 1

0

AFAIK .net dll 只是您提到的需要分发的本机 dll 的一种包装器。因此,除了使用所有兆字节的本机 dll 分发您的应用程序之外,别无他法。

更重要的是,这些 dll 的分发也存在许可证限制。我很确定 Oracle 客户端库不能以任何其他方式自由地重新分发,而不是部署整个安装程序包(遗憾的是,它非常大并且配置起来非常复杂)并在客户端上运行它。

于 2012-08-13T19:55:47.490 回答