- Открыть много файловых баз (локально, одновременно)
- Вы можете получить ошибку «Из памяти» из-за ограничения кучи рабочего стола
- Симптомы
- Причина
- Разрешение
- Исправлена ли эта проблема
- Ошибка при запуске многих приложений COM+: код ошибки 80080005 — сбой выполнения сервера
- Симптомы
- Причина
- Обходной путь
- Действия для воспроизведения поведения
- Exe objectdirectory windows sharedsection
- Answered by:
- Question
Открыть много файловых баз (локально, одновременно)
Ибо на 5-6 уже начинает либо сразу падать после загрузки, либо зависать со 100% загрузкой проца. Лечится только снятием процесса.
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\SubSystems]
«Debug»=hex(2):00,00
«Kmode»=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,\
00,25,00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,77,00,\
69,00,6e,00,33,00,32,00,6b,00,2e,00,73,00,79,00,73,00,00,00
«Optional»=hex(7):50,00,6f,00,73,00,69,00,78,00,00,00,00,00
«Posix»=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,\
00,25,00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,70,00,\
73,00,78,00,73,00,73,00,2e,00,65,00,78,00,65,00,00,00
«Required»=hex(7):44,00,65,00,62,00,75,00,67,00,00,00,57,00,69,00,6e,00,64,00,\
6f,00,77,00,73,00,00,00,00,00
«Windows»=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,\
74,00,25,00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,63,\
00,73,00,72,00,73,00,73,00,2e,00,65,00,78,00,65,00,20,00,4f,00,62,00,6a,00,\
65,00,63,00,74,00,44,00,69,00,72,00,65,00,63,00,74,00,6f,00,72,00,79,00,3d,\
00,5c,00,57,00,69,00,6e,00,64,00,6f,00,77,00,73,00,20,00,53,00,68,00,61,00,\
72,00,65,00,64,00,53,00,65,00,63,00,74,00,69,00,6f,00,6e,00,3d,00,35,00,31,\
00,32,00,30,00,2c,00,36,00,34,00,30,00,30,00,2c,00,35,00,31,00,32,00,30,00,\
20,00,57,00,69,00,6e,00,64,00,6f,00,77,00,73,00,3d,00,4f,00,6e,00,20,00,53,\
00,75,00,62,00,53,00,79,00,73,00,74,00,65,00,6d,00,54,00,79,00,70,00,65,00,\
3d,00,57,00,69,00,6e,00,64,00,6f,00,77,00,73,00,20,00,53,00,65,00,72,00,76,\
00,65,00,72,00,44,00,6c,00,6c,00,3d,00,62,00,61,00,73,00,65,00,73,00,72,00,\
76,00,2c,00,31,00,20,00,53,00,65,00,72,00,76,00,65,00,72,00,44,00,6c,00,6c,\
00,3d,00,77,00,69,00,6e,00,73,00,72,00,76,00,3a,00,55,00,73,00,65,00,72,00,\
53,00,65,00,72,00,76,00,65,00,72,00,44,00,6c,00,6c,00,49,00,6e,00,69,00,74,\
00,69,00,61,00,6c,00,69,00,7a,00,61,00,74,00,69,00,6f,00,6e,00,2c,00,33,00,\
20,00,53,00,65,00,72,00,76,00,65,00,72,00,44,00,6c,00,6c,00,3d,00,77,00,69,\
00,6e,00,73,00,72,00,76,00,3a,00,43,00,6f,00,6e,00,53,00,65,00,72,00,76,00,\
65,00,72,00,44,00,6c,00,6c,00,49,00,6e,00,69,00,74,00,69,00,61,00,6c,00,69,\
00,7a,00,61,00,74,00,69,00,6f,00,6e,00,2c,00,32,00,20,00,50,00,72,00,6f,00,\
66,00,69,00,6c,00,65,00,43,00,6f,00,6e,00,74,00,72,00,6f,00,6c,00,3d,00,4f,\
00,66,00,66,00,20,00,4d,00,61,00,78,00,52,00,65,00,71,00,75,00,65,00,73,00,\
74,00,54,00,68,00,72,00,65,00,61,00,64,00,73,00,3d,00,31,00,36,00,00,00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\SubSystems\CSRSS]
«CsrSrvSharedSectionBase»=dword:7f6f0000
Вы можете получить ошибку «Из памяти» из-за ограничения кучи рабочего стола
В этой статье помогают устранить ошибку «Из памяти», которая возникает при открываемом многих окнах приложений в Windows.
Оригинальная версия продукта: Windows 7 Пакет обновления 1, Windows Server 2012 R2
Исходный номер КБ: 947246
Симптомы
После открытия многих окон приложений в Windows вы не сможете открыть дополнительные окна. Иногда может открываться окно, но оно не будет содержать ожидаемые компоненты. Кроме того, вы получаете сообщение об ошибке, которое напоминает:
Причина
Эта проблема возникает из-за ограничения кучи рабочего стола. Когда вы закрываете некоторые окна, а затем пытаетесь открыть другие окна, эти окна могут открываться. Однако этот метод не влияет на ограничение кучи рабочего стола.
Разрешение
В этот раздел, описание метода или задачи включены действия, содержащие указания по изменению параметров реестра. Однако неправильное изменение параметров реестра может привести к возникновению серьезных проблем. Поэтому следует в точности выполнять приведенные инструкции. Для дополнительной защиты создайте резервную копию реестра, прежде чем редактировать его. Так вы сможете восстановить реестр, если возникнет проблема. Дополнительные сведения о том, как создать и восстановить реестр, см. в этой информации, как создать и восстановить реестр в Windows.
Чтобы устранить эту проблему, измените размер кучи рабочего стола, следуя следующим шагам:
Нажмите кнопку Начните, введите regedit в поле Начните поиск, а затем выберите regedit.exe в списке Программ.
Если вам предложен пароль администратора или подтверждение, введите пароль или нажмите кнопку Продолжить.
Найдите и выберите HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\SubSystems подки реестра.
Щелкните правой кнопкой мыши запись Windows, а затем выберите Изменение.
В разделе Значение данных диалоговое окно Изменить строку, найдите запись, а затем увеличить второе значение и третье значение для SharedSection этой записи.
- Второе значение записи реестра — размер кучи рабочего стола для каждого рабочего стола, связанного SharedSection с интерактивной оконной станцией. Куча требуется для каждого рабочего стола, созданного в интерактивной оконной станции (WinSta0). Значение задается в килобайтах (КБ).
- Третье значение — размер кучи рабочего стола для каждого рабочего стола, связанного SharedSection с неинактивной оконной станцией. Значение задается в килобайтах (КБ).
- Мы не рекомендуем задать для второго значения значение более 20480 SharedSection КБ.
По умолчанию запись реестра Windows содержит следующие данные в x86-версии Windows 7 Пакет обновления 1.
%SystemRoot%\system32\csrss.exe
ObjectDirectory=\Windows
SharedSection=1024, 12288 512
Windows=On
SubSystemType=Windows
ServerDll=basesrv,1
ServerDll=winsrv:UserServerDllInitialization,3
ServerDll=winsrv:ConServerDllInitialization,2
ProfileControl=Off
MaxRequestThreads=16
Windows 7 Пакет обновления 1 (64 бита) / Windows Server 2008 R2, R2 2012 (64 бита)
Распределение памяти динамически в более поздних операционных системах. Для выделения памяти нет ограничений. Однако, если вы выделяете слишком много памяти на кучи рабочего стола, может возникнуть отрицательная производительность. Поэтому мы не рекомендуем устанавливать значение более 20480.
Размер кучи рабочего стола не зависит от физической оперативной памяти на компьютере. Нельзя повысить производительность, добавив физическую оперативную память.
Исправлена ли эта проблема
Проверьте, устранена ли проблема. Если проблема не устранена, обратитесь в службу поддержки.
Ошибка при запуске многих приложений COM+: код ошибки 80080005 — сбой выполнения сервера
В этой статье приводится обходное решение проблемы, из которой при запуске многих приложений Microsoft COM+ вручную из оснастки консоли управления (MMC) служб компонентов вы получаете код ошибки 80080005.
Исходная версия продукта: Windows Server 2012 R2
Исходный номер КБ: 870655
Симптомы
При запуске многих приложений Microsoft COM+ вручную из оснастки консоли управления (MMC) служб компонентов, где каждое приложение COM+ работает под другой учетной записью пользователя, может появиться следующее сообщение об ошибке:
Ошибка каталога: ошибка при обработке последней операции. Код ошибки 80080005 — сбой выполнения сервера. Журнал событий может содержать дополнительные сведения об устранении неполадок.
Вы получите сообщение об ошибке, аналогичное следующему в журнале приложения просмотра событий:
Категории: None (нет)
ИД события: 10010
Пользователь: СИСТЕМА NT \ AUTHORITY
Описание: сервер
Причина
Если многие приложения COM+ работают под разными учетными записями пользователей, указанными в свойстве This User, компьютер не может выделить память для создания новой кучи рабочего стола для нового пользователя. Поэтому процесс не может начаться.
Обходной путь
В этот раздел, описание метода или задачи включены действия, содержащие указания по изменению параметров реестра. Однако неправильное изменение параметров реестра может привести к возникновению серьезных проблем. Поэтому следует в точности выполнять приведенные инструкции. Для дополнительной защиты создайте резервную копию реестра, прежде чем редактировать его. Так вы сможете восстановить реестр, если возникнет проблема. Дополнительные сведения о том, как создать и восстановить реестр, см. в этой теме.
Чтобы обойти эту проблему, измените значение следующего поднажатия реестра:
Для этого выполните следующие действия:
Щелкните Пуск, затем Выполнить и введите regedit. Затем нажмите ОК.
Открыв редактор реестра, выберите следующий подраздел:
По умолчанию запись 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
Щелкните правой кнопкой мыши запись Windows и выберите пункт «Изменить». Появится диалоговое окно «Изменение строки».
В поле данных «Значение» найдите SharedSection, добавьте в SharedSection значение 512 и нажмите кнопку «ОК».
Только что измененная запись 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
Действия для воспроизведения поведения
Создайте на компьютере 100 различных локальных учетных записей пользователей.
Откройте оснастку MMC «Службы компонентов». Для этого выполните следующие действия:
- Нажмите кнопку Пуск, выделите пункт Настройка и выберите Панель управления.
- В панели управления дважды щелкните «Администрирование» и дважды щелкните компонент «Службы». Появится оснастка MMC «Службы компонентов».
- В левой области раз expand Component Services, expand Computers, and then expand My Computer.
Создайте приложение COM+, а затем установите удостоверение приложения COM+. Для этого выполните следующие действия:
- Щелкните правой кнопкой мыши приложения COM+, найдите пункт «Новый» и выберите пункт «Приложение». Появится диалоговое окно мастера установки com-приложений.
- В диалоговом окне мастера установки приложений COM нажмите кнопку «Далее». Появится диалоговое окно «Установка или создание нового приложения».
- Щелкните «Создать пустое приложение». Появится диалоговое окно «Создание пустого приложения».
- В поле «Введите имя нового приложения» введите MyCOM1 и нажмите кнопку «Далее». Появится диалоговое окно «Настройка удостоверения приложения».
- Щелкните этого пользователя и введите имя пользователя, созданное на шаге 1, в поле «Пользователь».
- В диалоговом окне «Настройка удостоверения приложения» введите пароль в поле «Пароль» и «Подтверждение пароля» и нажмите кнопку «Далее». Появится диалоговое окно «Благодарим вас за использование мастера установки приложений COM».
- Нажмите кнопку Готово.
Добавьте компонент в приложение COM+. Для этого выполните следующие действия:
- В левой области оснастки MMC «Службы компонентов» разорвате myCom1.
- Щелкните правой кнопкой мыши «Компоненты», найдите пункт «Новый» и выберите «Компонент». Появится диалоговое окно «Мастер установки компонентов COM».
- Нажмите кнопку Далее. Появится диалоговое окно «Импорт или установка компонента».
- Щелкните «Импорт компонентов», которые уже зарегистрированы. Появится диалоговое окно «Выбор компонентов для импорта».
- В списке компонентов «Мой компьютер» щелкните компонент и нажмите кнопку «Далее». Появится диалоговое окно «Благодарим вас за использование мастера установки приложений COM».
- Нажмите кнопку Готово.
Повторите шаг 3, чтобы создать 100 приложений COM+, которые работают под разными локальными учетные записи пользователей.
Повторите шаг 4, чтобы добавить компоненты в 100 приложений COM+, созданных на шаге 5.
В левой области оснастки MMC «Службы компонентов» щелкните правой кнопкой мыши каждое созданное приложение COM+ и выберите «Начните». После запуска некоторых приложений COM+ вы получите сообщение об ошибке, описанное в разделе «Признаки».
Exe objectdirectory windows sharedsection
This forum has migrated to Microsoft Q&A. Visit Microsoft Q&A to post new questions.
Answered by:
Question
First let me start by stating that I have read numerous posts regarding this error (both here on TechNet, as well as other sites) and still cannot resolve my issue. I am reasonably certain that it is a Desktop Heap issue but have hit a wall trying to resolve it.
The Problem:
We have a Windows 2012R2 server running SharePoint 2013 and is the Central Administration Server. It has a couple Scheduled Tasks, which were running fine until a few weeks ago when we installed some SharePoint updates. Now, the tasks will run for about a day after a reboot before they start returning a 0xC0000142 code. Strangely, we have another very similarly configured SharePoint farm, that was updated at the same time, which is not having any issues.
Research & Troubleshooting:
Firstly, I can state confidently that it is not the scripts themselves. They will run after a reboot but start generating the error after some time (
a day). I even went so far as to enable Transaction logging in one of the scripts (they are both PowerShell scripts), but the task never gets far enough for PowerShell to initialize and generate the log – likely due to the Desktop Heap memory being exhausted and the task is unable to create an environment in which to run.
Some posts suggest running SFC /SCANNOW. I have done that, and it came back clean. And, again, the Task will run for a while after a reboot.
Some posts suggest or elude to changing the task from running under the SYSTEM account, to using a named account (e.g. Administrator). Unfortunately, these tasks are already running with a named account – specifically our SharePoint Admin account, as they need to run in that user context (e.g. SharePoint Farm backup). So, I am sort of stuck using the current account.
Finally, some posts suggest running the task interactively (i.e. “run only when user is logged in”). While that may very well work, it really isn’t a solution. These tasks need to run regardless of the user being logged in.
The Solution:
As stated, I have adjusted the Desktop Heap memory for non-interactive sessions (see https://blogs.msdn.microsoft.com/ntdebugging/2007/01/04/desktop-heap-overview/ ). In fact, I have doubled it twice (768KB to 1536KB; then to 3072KB). At first, it seemed to work. But after about a day the tasks started throwing the error again, so I adjusted it again. Since a reboot is necessary to activate the change, it takes a while to confirm whether it has helped or not.
So here are my questions:
- How big can/should I make the non-interactive Heap size? Some info that I read states that if the non-interactive heap is not set, it will default to the interactive heap’s size (20480KB for Win2008-x64 and newer). At some point it could become a performance issue, I would assume, but at 20MB probably not a big deal.
- Am I heading in the right direction? Is tweaking the Desktop Heap settings the best solution? Or should I be looking elsewhere? (not sure where…everything points here)
I will post updates as I have more relevant information.