JetEnableMultiInstance 函数

适用于: Windows |Windows Server

JetEnableMultiInstance 函数

JetEnableMultiInstance 函数将数据库引擎配置为用于同一进程中的多个实例。 全局系统参数的可选数组可供第一个调用方使用,允许更改为多实例模式。

Windows XP:JetEnableMultiInstance 在 Windows XP 中引入。

    JET_ERR JET_API JetEnableMultiInstance(
      __in_opt      JET_SETSYSPARAM* psetsysparam,
      __in_opt      unsigned long csetsysparam,
      __out_opt     unsigned long* pcsetsucceed
    );

参数

psetsysparam

全局系统参数数组,用于设置当且仅当引擎由于此调用而进入多实例模式时。 如果 csetsysparam 为零,则忽略 psetsysparam

csetsysparam

要设置的全局参数数组的元素计数,前提是且仅当引擎由于此调用而进入多实例模式时。 如果 csetsysparam 为零,则忽略 psetsysparam

pcsetsucceed

指向由于此调用而成功配置的全局系统参数计数的指针。

返回值

此函数返回具有以下返回代码之一 的JET_ERR 数据类型。 有关可能的 ESE 错误的详细信息,请参阅 可扩展存储引擎错误错误处理参数

返回代码

说明

JET_errSuccess

操作已成功完成。

JET_errIndexTuplesInvalidLimits

不允许使用指定的元组索引参数。 仅当将JET_paramIndexTuplesLengthMin、JET_paramIndexTuplesLengthMaxJET_paramIndexTuplesToIndexMax设置为非法值时,JetEnableMultiInstance 才会返回此错误。

Windowsxp: 此返回值在 Windows XP 中引入。

JET_errInvalidPath

指定的文件系统路径无效。 只有在设置表示文件系统路径的系统参数时, JetEnableMultiInstance 才会返回此错误。 例如, JET_paramSystemPath 可能会返回此错误。

JET_errRunningInOneInstanceMode

操作失败,因为当数据库引擎在单实例模式 (Windows 2000 兼容模式) 运行时,此操作是非法的。

JET_errSystemParamsAlreadySet

JetEnableMultiInstance 失败,因为引擎已处于多实例模式。

注意 即使未指定系统参数,也会发生这种情况。

如果此函数成功,数据库引擎将被配置为在多实例模式下运行。 引擎还成功配置了全局系统参数的可选列表。

如果此函数失败,数据库引擎将保持当前模式。 如果 pcsetsucceed 为非零,则系统参数数将保持设置。

备注

仅当应用程序在设置数据库引擎以在同一进程中的多用户方案中使用时,必须以原子方式配置一组给定的系统参数时,才应使用此函数。 如果其他同步方法可用,最好单独调用 JetCreateInstanceJetSetSystemParameter

要求

要求

客户端

需要 Windows Vista 或 Windows XP。

服务器

需要 Windows Server 2008 或 Windows Server 2003。

标头

在 Esent.h 中声明。

Library

使用 ESENT.lib。

DLL

需要ESENT.dll。

Unicode

实现为 JetEnableMultiInstanceW (Unicode) 和 JetEnableMultiInstanceA (ANSI) 。

另请参阅

JET_ERR
JET_SETSYSPARAM
JetCreateInstance
JetInit
JetSetSystemParameter