Поделиться через


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

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

Исходный номер базы знаний: 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+ выполняются под разными учетными записями пользователей, указанными в свойстве этого пользователя, компьютер не может выделить память для создания новой кучи рабочего стола для нового пользователя. Поэтому процесс не может начаться.

Обходное решение

Важно!

В этот раздел, описание метода или задачи включены действия, содержащие указания по изменению параметров реестра. Однако неправильное изменение параметров реестра может привести к возникновению серьезных проблем. Поэтому убедитесь, что вы внимательно выполните следующие действия. Для дополнительной защиты создайте резервную копию реестра перед его изменением. Так вы сможете восстановить реестр, если возникнет проблема. Для получения дополнительной информации о том, как создать резервную копию и восстановить реестр, см. статью Сведения о резервном копировании и восстановлении реестра 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=baserv,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,11 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, чтобы добавить компоненты в приложения COM+ 100, созданные на шаге 5.

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

Ссылки

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