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_paramIndexTuplesLengthMax或JET_paramIndexTuplesToIndexMax设置为非法值时,JetEnableMultiInstance 才会返回此错误。 Windowsxp: 此返回值在 Windows XP 中引入。 |
JET_errInvalidPath |
指定的文件系统路径无效。 只有在设置表示文件系统路径的系统参数时, JetEnableMultiInstance 才会返回此错误。 例如, JET_paramSystemPath 可能会返回此错误。 |
JET_errRunningInOneInstanceMode |
操作失败,因为当数据库引擎在单实例模式 (Windows 2000 兼容模式) 运行时,此操作是非法的。 |
JET_errSystemParamsAlreadySet |
JetEnableMultiInstance 失败,因为引擎已处于多实例模式。 注意 即使未指定系统参数,也会发生这种情况。 |
如果此函数成功,数据库引擎将被配置为在多实例模式下运行。 引擎还成功配置了全局系统参数的可选列表。
如果此函数失败,数据库引擎将保持当前模式。 如果 pcsetsucceed 为非零,则系统参数数将保持设置。
备注
仅当应用程序在设置数据库引擎以在同一进程中的多用户方案中使用时,必须以原子方式配置一组给定的系统参数时,才应使用此函数。 如果其他同步方法可用,最好单独调用 JetCreateInstance 和 JetSetSystemParameter 。
要求
要求 | 值 |
---|---|
客户端 |
需要 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