Ошибка при запуске нескольких приложений COM+: код ошибки 80080005 — сбой выполнения сервера

В этой статье описывается решение проблемы, из-за которой код ошибки 80080005 при запуске нескольких приложений Microsoft COM+ вручную из оснастки Консоли управления Майкрософт (MMC) служб компонентов.

Применяется к: Windows Server 2012 R2
Исходный номер базы знаний: 870655

Симптомы

При запуске нескольких приложений Microsoft COM+ вручную из оснастки Консоли управления Майкрософт (MMC), где каждое приложение COM+ выполняется под другой учетной записью пользователя, может появилось следующее сообщение об ошибке:

Ошибка каталога: произошла ошибка при обработке последней операции. Код ошибки 80080005 — сбой выполнения сервера. Журнал событий может содержать дополнительные сведения об устранении неполадок.

В журнале приложений Просмотр событий появится сообщение об ошибке, похожее на следующее:

Type: Error
Source: DCOM

Category: None
Event ID: 10010

Date: 31/03/2004

Time: 15:13:30

User: NT AUTHORITY\SYSTEM

Computer: MSHSRMSWEBP0007

Description: The server {F1673109-CF44-468D-9E23-FE4116F84CFA} did not register with DCOM within the required timeout.

Причина

Если многие приложения COM+ выполняются под разными учетными записями пользователей, указанными в свойстве This User , компьютер не может выделить память для создания новой кучи рабочего стола для нового пользователя. Поэтому процесс не может быть запущен.

Обходной путь

Важно!

В этот раздел, описание метода или задачи включены действия, содержащие указания по изменению параметров реестра. Однако неправильное изменение параметров реестра может привести к возникновению серьезных проблем. Поэтому следует в точности выполнять приведенные инструкции. Для дополнительной защиты создайте резервную копию реестра, прежде чем редактировать его. Так вы сможете восстановить реестр, если возникнет проблема. Для получения дополнительной информации о том, как создать резервную копию и восстановить реестр, см. статью Сведения о резервном копировании и восстановлении реестра Windows.

Чтобы обойти эту проблему, измените значение следующего подраздела реестра:

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\SubSystems\Windows

Для этого выполните следующие действия:

  1. Щелкните Пуск, затем Выполнить и введите regedit. Затем нажмите ОК.

  2. Открыв редактор реестра, выберите следующий подраздел:

    HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\SubSystems

    По умолчанию запись Windows в подразделе имеет значение, аналогичное следующему (все в одной строке):

    %SystemRoot%\system32\csrss.exe ObjectDirectory=\Windows SharedSection=1024,3072 Windows=On SubSystemType=Windows ServerDll=basesrv,1 ServerDll=winsrv:UserServerDllInitialization,3 ServerDll=winsrv:ConServerDllInitialization,2 ProfileControl=Off MaxRequestThreads=16

  3. Щелкните правой кнопкой мыши запись Windows и выберите команду Изменить. Откроется диалоговое окно Изменение строки .

  4. В поле Значение данных найдите SharedSection, добавьте 512 в SharedSection и нажмите кнопку ОК.

    Измененная запись Windows выглядит следующим образом:

    %SystemRoot%\system32\csrss.exe ObjectDirectory=\Windows SharedSection=1024,3072,512 Windows=On SubSystemType=Windows ServerDll=basesrv,1 ServerDll=winsrv:UserServerDllInitialization,3 ServerDll=winsrv:ConServerDllInitialization,2 ProfileControl=Off MaxRequestThreads=16

Действия по воспроизведению поведения

  1. Создайте на компьютере 100 различных локальных учетных записей пользователей.

  2. Откройте оснастку MMC служб компонентов. Для этого выполните следующие действия:

    1. Нажмите кнопку Пуск, выделите пункт Настройка и выберите Панель управления.
    2. В панель управления дважды щелкните Администрирование, а затем дважды щелкните Службы компонентов. Откроется оснастка MMC служб компонентов .
    3. В левой области разверните узлы Службы компонентов, Компьютеры, а затем — Мой компьютер.
  3. Создайте приложение COM+, а затем задайте удостоверение приложения COM+. Для этого выполните следующие действия:

    1. Щелкните правой кнопкой мыши COM+ Приложения, наведите указатель мыши на пункт Создать и выберите пункт Приложение. Откроется диалоговое окно Добро пожаловать в мастер установки com-приложений.
    2. В диалоговом окне Добро пожаловать в мастер установки com-приложений нажмите кнопку Далее. Откроется диалоговое окно Установка или создание нового приложения .
    3. Щелкните Создать пустое приложение. Откроется диалоговое окно Создание пустого приложения .
    4. В поле Введите имя нового приложения введитеMyCOM1 и нажмите кнопку Далее. Откроется диалоговое окно Настройка удостоверения приложения .
    5. Щелкните Этот пользователь и введите имя пользователя, созданное на шаге 1, в поле Пользователь .
    6. В диалоговом окне Установка удостоверения приложения введите пароль в полях Пароль и Подтвердить пароль , а затем нажмите кнопку Далее. Откроется диалоговое окно Спасибо за использование мастера установки приложений COM .
    7. Нажмите кнопку Готово.
  4. Добавьте компонент в приложение COM+. Для этого выполните следующие действия:

    1. В левой области оснастки MMC Служб компонентов разверните узел MyCom1.
    2. Щелкните правой кнопкой мыши пункт Компоненты, наведите указатель мыши на пункт Создать и выберите пункт Компонент. Откроется диалоговое окно Добро пожаловать в мастер установки com-компонентов.
    3. Нажмите кнопку Далее. Откроется диалоговое окно Импорт или установка компонента .
    4. Щелкните Импорт уже зарегистрированных компонентов. Откроется диалоговое окно Выбор компонентов для импорта .
    5. В списке Компоненты в: Мой компьютер щелкните компонент и нажмите кнопку Далее. Откроется диалоговое окно Спасибо за использование мастера установки приложений COM .
    6. Нажмите кнопку Готово.
  5. Повторите шаг 3, чтобы создать 100 приложений COM+, которые выполняются под разными локальными учетными записями пользователей.

  6. Повторите шаг 4, чтобы добавить компоненты в 100 приложений COM+, созданных на шаге 5.

  7. В левой области оснастки MMC "Службы компонентов " щелкните правой кнопкой мыши каждое созданное приложение COM+, а затем нажмите кнопку Пуск. После запуска некоторых приложений COM+ появляется сообщение об ошибке, описанное в разделе Симптомы .

Ссылки

Создание нового приложения COM+