Функция JetEnableMultiInstance

Область применения: Windows | Сервер Windows

Функция 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

Указанные параметры индекса кортежа не разрешены. Эта ошибка может быть возвращена JetEnableMultiInstance только при задании JET_paramIndexTuplesLengthMin, JET_paramIndexTuplesLengthMax или JET_paramIndexTuplesToIndexMax недопустимого значения.

Windows XP: это возвращаемое значение представлено в Windows XP.

JET_errInvalidPath

Указанный путь к файловой системе недопустим. Эта ошибка может быть возвращена JetEnableMultiInstance , только если заданы системные параметры, представляющие пути к файловой системе. Например, JET_paramSystemPath может возвращать эту ошибку.

JET_errRunningInOneInstanceMode

Операция завершилась сбоем, так как она недопустима, когда ядро СУБД работает в режиме одного экземпляра (Windows режиме совместимости 2000).

JET_errSystemParamsAlreadySet

Сбой JetEnableMultiInstance , так как двигатель уже находится в режиме с несколькими экземплярами.

Примечание Это произойдет, даже если системные параметры не указаны.

Если эта функция будет выполнена успешно, ядро СУБД будет настроено для запуска в режиме с несколькими экземплярами. Подсистема также успешно настроена с необязательным списком глобальных параметров системы.

Если эта функция завершается ошибкой, ядро СУБД останется в текущем режиме. Если наборы pcsetsucceed не равны нулю, это число системных параметров останется установленным.

Remarks

Эту функцию следует использовать только в том случае, если приложение должно настроить заданный набор системных параметров атомарно при настройке ядра СУБД для использования в сценарии с несколькими пользователями в одном процессе. Если доступен другой метод синхронизации, предпочтительно вызывать JetCreateInstance и JetSetSystemParameter отдельно.

Требования

Требование Значение

Клиент

Требуется Windows Vista или Windows XP.

Server

Требуется Windows Server 2008 или Windows Server 2003.

Верхняя часть

Объявлен в Esent.h.

Библиотека

Используйте ESENT.lib.

DLL

Требуется ESENT.dll.

Юникод

Реализовано как JetEnableMultiInstanceW (Юникод) и JetEnableMultiInstanceA (ANSI).

См. также:

JET_ERR
JET_SETSYSPARAM
JetCreateInstance
JetInit
JetSetSystemParameter