С каждой новой версией операционной системы Windows её сложность возрастает прямо пропорционально росту требований к аппаратной части компьютеров. Правда, выразить эти показатели в численном виде не представляется возможным, но косвенных подтверждений этому предостаточно. Например, об уровне сложности ОС можно судить по количеству выявленных пользователями багов. Windows 7 в этом плане, являясь наиболее распространённой системой на постсоветском пространстве, на несколько порядков обогнала предшественницу ХР, державшуюся более десятка лет. У Windows 7 по вполне очевидным причинам всё впереди.
Огромное количество ошибок можно объяснить ухудшением качества программирования, которое ставится на поток в угоду чисто маркетинговым целям. Ввиду специфичности кода ОС Виндовс значительная часть проблем возникает при обращении к фалам с расширением .dll, которые используются любой программой. Сегодня мы поговорим об ошибке, имеющей отношение к компоненте Windows ntdll.dll, которая в большинстве случаев сопровождается аварийным завершением программ.
Что собой представляет ошибка Windows 7/10 ntdll.dll
Программисты хорошо знают о важности наличия библиотек готовых подпрограмм, упрощающих написание сложного ПО. Файлы DLL как раз и являются разновидностью таких библиотечных подпрограмм, выполняющих определённые однотипные функции, к которым могут обращаться любые программы.
Файл ntdll.dll входит в число таких компонент, отвечая за эффективное распределение памяти, общий доступ к которому получают даже такие монстры, как Microsoft Office Access.
Таким образом, этот файл позволяет увеличить производительность компьютера. Но насколько такие объекты полезны и эффективны, настолько же они уязвимы к разного рода неприятностям. Любое повреждение модуля DLL, вызванное непреднамеренными действиями пользователя или целенаправленной деятельностью вредоносного ПО, сказывается на работе операционной системы. В большинстве случаев сбой в работе важных компонент Windows сопровождается появлением сообщения об ошибке, очень часто сочетающейся с аварийным завершением работы программ, использующих данную библиотеку.
Ошибка ntdll.dll не является исключением.
Возможные причины возникновения проблемы
Итак, мы уже выяснили, что модуль ntdll.dll является жизненно важной компонентой Виндовс, обеспечивающей обработку API и функционирование прикладного ПО вне зависимости от его назначения. Среди конкретных функций, входящих в состав модуля, можно назвать достаточно распространённые операции – копирование, сравнение, перемещение, вставка и пр. Поскольку редко какая программа не использует эти операции, причин появления ошибки с именем сбойного модуля ntdll.dll в описании может быть множество:
- пользователь компьютера производил обновление или установку нового ПО, в результате которого исходный файл был заменён более старой версией с потерей функциональности;
- из-за тех же действий файл оказался удалённым с жёсткого диска;
- недавно установленная программа оказалась несовместимой с используемой версией Windows, с этой проблемой часто сталкивались пользователи, недавно перешедшие на Win7 и привыкшие использовать программы, без проблем работавшие на Windows XP;
- файл ntdll.dll может получить повреждения или быть удалённым в результате деятельности вирусного и/или шпионского ПО;
- модуль может получить повреждения из-за внезапного отключения питания, во время загрузки с диска;
- нередко причиной разрушения файла является появление на диске HDD/SSD сбойных секторов.
Виндовс при возникновении ошибки пытается проанализировать её причину, чтобы дать возможность пользователям как можно оперативнее локализовать неисправность. В описании ошибки ntdll.dll часто встречаются следующие уточнения:
- ntdll.dll отсутствует или файл невозможно найти;
- нарушение прав доступа к модулю;
- ntdll.dll не удаётся зарегистрировать;
- не удаётся запустить программу из-за отсутствия компонента ntdll.dll;
- операционная система не смогла загрузить ntdll.dll;
- модуль ntdll.dll повреждён или отсутствует.
Эти уточнения действительно сужают круг поисков причин возникновения сбойной ситуации, уменьшая время, необходимое для устранения ошибки.
Способы исправления ошибки
Для начала необходимо убедиться в наличии модуля, который располагается в папке WindowsSysWOW64 или WindowsSystem32. Если файл на месте, попробуйте перезагрузить систему – не исключено, что ошибка появилась случайно и является следствием временной проблемы с прикладным ПО. Если ошибочное сообщение выскакивает только при запуске определённой программы – попробуйте её переустановить.
Если ничего из этого не помогло, воспользуйтесь следующими инструкциями:
- Возможно, причиной сбоя стал конфликт между прикладным ПО и модулем. Обычно, если пользователи жалуются на наличие проблем подобного рода, программисты Microsoft реагируют, выпуская обновления, исправляющие выявленные ошибки. Между тем многие пользователи отключают автоматическую загрузку обновлений ОС. Стоит воспользоваться этой возможностью, отменив введённые вами ограничения в Windows Update Center.
- Если к сбою приводит работа конкретной программы, стоит попробовать запустить её в режиме совместимости. Для этого нужно кликнуть правой кнопкой мыши на иконке проблемной программы и в открывшемся меню выбрать пункт «Свойства», а в открывшемся окне – раздел «Совместимость». В верхнем блоке «Режим совместимости» нужно поставить галочку и в появившемся списке выбрать версию ОС, установленную на компьютере. Затем галочку ставим в нижнем блоке напротив надписи «Выполнять программу от имени администратора». После подтверждения внесённых изменений снова запустите проблемное ПО, чтобы убедиться, что проблема исчезла (или осталась). В последнем случае стоит попробовать другие, более ранние версии ОС.
- Исправить ошибку ntdll.dll можно попробовать посредством отключения контроля учётных записей ОС. Для этого через меню «Пуск» в консоли поиска вводим «UAC» (полный вариант модуля, если не лень набирать – «Изменение параметров контроля учётных записей»). Щёлкаем на названии модуля, в открывшемся окне появится ползунок, который нужно установить в крайнее нижнее положение, соответствующее режиму «Никогда не уведомлять». Сохраняем изменения, перезагружаем ПК и проверяем его работоспособность.
- Часто к положительным последствиям приводит отключение службы PcaSvc. Её полное название – «Служба помощника по совместимости программ», однако запустить её через строку поиска не удастся. Поэтому в меню «Пуск» необходимо запустить «Панель управления» и выбрать вкладку «Система и безопасность». В правом окне внизу выбираем подраздел «Администрирование», в открывшемся списке ищем ветку «Службы» и двойным щелчком открываем её. Те же результаты можно получить, набрав в консоли «Выполнить» команду services.msc. Откроется список используемых системой служб, для облегчения поиска сортируем его по алфавиту и ищем строку PcaSvc или её полное название. Вызываем контекстное меню, кликнув ПКМ по названию службы, заходим в «Свойства» и в блоке «Состояние» кликаем на кнопке «Остановить». В блоке, расположенном повыше, напротив строки «Тип запуска» выбираем параметр «Отключена». Сохраняем изменения, выполняем перезагрузку ПК, наблюдаем за его работой.
- Наиболее радикальный способ избавиться от проблемы, которая вызывает ошибку ntdll.dll – восстановить систему на дату, когда рассматриваемое сообщение заведомо не появлялось. Скорее всего, проблема возникла из-за установленного позже ПО, но вы не помните, какого. В любом случае откат является проверенным и надёжным способом решения подобных ситуаций. Итак, снова кликаем на кнопке «Пуск», запускаем «Панель управления». Выбираем в разделе «Центр поддержки» пункт «Восстановление предшествующего состояния ПК». Кликаем на кнопке «Запуск восстановления системы и из списка выбираем подходящую дату.
ВНИМАНИЕ. Восстановление системы не затрагивает пользовательские файлы типа изображений, документов и прочих файлов. Однако установленные недавно программы и драйверы будут потеряны, их придётся переустанавливать. Отметим, что данная операция обратимая, то есть при неудачном восстановлении всегда можно вернуть систему в исходное состояние. Нельзя также прерывать восстановление, поскольку это может привести к падению ОС и необходимости её восстановления.
Hi,
I am working on it for days but not able yet to find a solution. I have packaged Office 2016 with The Office Deployment Tool (officedeploymenttool_6612-6353.exe). That was even hard but ok, was able to find a solution.
Now when I publish Office 2016 to my VM, all applications works fine except Word. You can work with it, open existing files but as soon as I click the browse or save as function, Word crashes immediately and closes Word. This is the error:
Faulting application name: WINWORD.EXE, version: 16.0.6741.2017, time stamp: 0x56e712e4 Faulting module name: ntdll.dll, version: 6.3.9600.18202, time stamp: 0x569e72c5 Exception code: 0xc0000374 Fault offset: 0x000e6054 Faulting process id: 0x954 Faulting application start time: 0x01d18451b672ae01 Faulting application path: C:ProgramDataMicrosoftAppVClientIntegrationEB51A3D4-B87F-4676-AD01-5D583ABE053CRootOffice16WINWORD.EXE Faulting module path: C:WindowsSYSTEM32ntdll.dll Report Id: 0acf244b-f045-11e5-80d0-00155d37ee00 Faulting package full name: Faulting package-relative application ID:
So it keeps complaining about the ntdll.dll. I don’t see that dll file in the virtual package. It is there on the local file system.
Suggested fixes like deleting a security update or renaming a registry fix are not relevant for me since it’s an App-V package.
Any help would really be apprecaited because I really can’t find a solution at the moment.
The VM is completely updated and also tried another fresh VM. Same problems.
Thanks!
Hi,
I looked at the information that you sent and some items mentioned opening files from SharePoint.
Try the following suggestions to try and narrow down where the problem may be.
1.
Install a local default printer. The XPS printer should be fine.
2.
If the files are on a Sharepint location, try clearing the cache:
a)
Click
Start
, click
All Programs
, click
Microsoft Office
, click
Microsoft Office 2010 Tools
, and then click
Microsoft Office 2010 Upload Center
.
b)
In Upload Center, click
Settings
.
c)
Under
Cached Settings
, click
Delete cached files
.
d)
When you are prompted, click
Delete cached information
.
3.
See if the issue happens with documents on the local machine.
4.
See if there is something that is common to the files that cause the crash. For instance, is there a particular graphic or spreadsheet? Or are the documents based off a particular template?
5.
Try updating one of the machines to have the latest updates.
Go to this link:
http://support.microsoft.com/kb/2528533
For starters, try installing the following ones.
http://support.microsoft.com/kb/2516481
http://support.microsoft.com/kb/2516475
http://support.microsoft.com/kb/2523129
6.
Also, try running msconfig, choose selective startup and disable all startup items and on the services tab, click to check “Hide all Microsoft services” and then uncheck all
the items that are left.
7.
Restart the machine and test again.
8.
If there are still issues, try starting Windows in safe mode and test again.
These tests will at least rule out some items to see where to go from there.
Thanks, Please remember to click “Mark as Answer” on the post that helps you, and to click “Unmark as Answer” if a marked post does not actually answer your question. This can be beneficial to other community members reading the thread. Regards, Risa Microsoft
Online Community Support
-
Marked as answer by
Friday, June 24, 2011 8:40 AM