1

我已经关注了这篇文章,但它不起作用。有人能告诉我还有什么要检查的吗?

我遵循的步骤:

  1. 我将当前安装的 Oracle (11gR2_x32) 中的 dll 添加到项目的根目录中。我没有像帖子所说的那样使用基本精简版,但我认为 dll 是一样的,对吧?

    • oci.dll
    • ociw32.dll
    • Oracle.DataAccess.DLL
    • orannzsbb11.dll
    • oraocci11.dll
    • oraociicus11.dll
    • OraOps11w.dll
  2. 在我的项目中选择每个 dll 并将“构建操作”设置为“内容”,将“复制到输出目录”设置为“始终复制”

  3. 添加了对 Oracle.DataAccess 的引用

  4. 在我的 vb 代码中添加了“导入 Oracle.DataAccess.Client”。

该代码运行良好,但仍需要用户安装 Oracle。我的意图是不让他们安装 oracle。我验证了当他们安装我的程序时,所有 dll 都存在于程序文件夹中。

我还能检查什么?

4

1 回答 1

1

该代码运行良好,但仍需要用户安装 Oracle。我的意图是不让他们安装 oracle。

据我所知,没有真正的“嵌入式”Oracle,您无法避免安装 Oracle 数据库服务器。如果您真的需要嵌入式数据库,有几个不错的选择,包括但不限于:SQLite、MS SQL Server Compact 或 LocalDB 1、Interbase/Firebird 等...

几年前,Oracle 为公司运行了一个许可计划,您可以将 Oracle 设置集成到您自己的设置中,并使其对用户“不可见”,但这仍将安装完整的 Oracle 服务器。例如,早期版本的 PTC Pro/INTRALINK 就是这样安装的——您不需要单独的 Oracle 安装。我不知道这个许可计划是否仍然可用,但即使它是可用的,您也可能正在寻找一项非常重要的金融投资。

顺便说一句,Oracle 的完全托管的 .NET 提供程序目前处于测试阶段- 这将进一步简化客户端部署并消除 32 位与 64 位不匹配。


1 LocalDB 在技术上不像“进程内”那样“嵌入”,但这可能不会对您的最终用户产生影响。

于 2012-10-10T21:43:55.127 回答