JetEnableMultiInstance Function
Applies to: Windows | Windows Server
JetEnableMultiInstance Function
The JetEnableMultiInstance function configures the database engine for use with multiple instances in the same process. An optional array of global system parameters is available to the first caller allowing for the change to multi-instance mode.
Windows XP: JetEnableMultiInstance is introduced in Windows XP.
JET_ERR JET_API JetEnableMultiInstance(
__in_opt JET_SETSYSPARAM* psetsysparam,
__in_opt unsigned long csetsysparam,
__out_opt unsigned long* pcsetsucceed
);
Parameters
psetsysparam
An array of global system parameters to set if and only if the engine enters multi-instance mode as a result of this call. If csetsysparam is zero then psetsysparam is ignored.
csetsysparam
The count of elements for the array of global parameters to set if and only if the engine enters multi-instance mode as a result of this call. If csetsysparam is zero then psetsysparam is ignored.
pcsetsucceed
A pointer to the count of global system parameters that were successfully configured as a result of this call.
Return Value
This function returns the JET_ERR datatype with one of the following return codes. For more information about the possible ESE errors, see Extensible Storage Engine Errors and Error Handling Parameters.
Return code |
Description |
---|---|
JET_errSuccess |
The operation completed successfully. |
JET_errIndexTuplesInvalidLimits |
The specified tuple index parameters were not allowed. This error can be returned by JetEnableMultiInstance only when setting JET_paramIndexTuplesLengthMin, JET_paramIndexTuplesLengthMax, or JET_paramIndexTuplesToIndexMax to an illegal value. Windows XP: This return value is introduced in Windows XP. |
JET_errInvalidPath |
The specified file system path was invalid. This error can be returned by JetEnableMultiInstance only when setting system parameters that represent file system paths. For example, JET_paramSystemPath can return this error. |
JET_errRunningInOneInstanceMode |
The operation failed because it is illegal when the database engine is operating in single instance mode (Windows 2000 compatibility mode). |
JET_errSystemParamsAlreadySet |
JetEnableMultiInstance failed because the engine is already in multi-instance mode. Note This will happen even if no system parameters are specified. |
If this function succeeds, the database engine will be configured to run in multi-instance mode. The engine was also successfully configured with the optional list of global system parameters.
If this function fails, the database engine will remain in the current mode. If pcsetsucceed is non-zero, that number of system parameters will remain set.
Remarks
This function should only be used if the application must configure a given set of system parameters atomically when setting up the database engine for use in a multi-user scenario in the same process. If another method of synchronization is available, it is preferable to call JetCreateInstance and JetSetSystemParameter separately.
Requirements
Requirement | Value |
---|---|
Client |
Requires Windows Vista or Windows XP. |
Server |
Requires Windows Server 2008 or Windows Server 2003. |
Header |
Declared in Esent.h. |
Library |
Use ESENT.lib. |
DLL |
Requires ESENT.dll. |
Unicode |
Implemented as JetEnableMultiInstanceW (Unicode) and JetEnableMultiInstanceA (ANSI). |
See Also
JET_ERR
JET_SETSYSPARAM
JetCreateInstance
JetInit
JetSetSystemParameter