Странная ошибка с ntdll.dll в Windows 7 Ultimate x64 SP1

WINDOWS 7 ULTIMATE X64 SP1

Недавно я пробовал (условно-бесплатную) программу управления буфером обмена под названием Spartan, которая поставляется с кучей умных и полезных функций, но, похоже, у нее довольно крутая кривая обучения.

Когда я впервые запустил программу после установки, я получил следующее сообщение об ошибке:

"Не удалось найти точку входа в процедуру RtlGetNtSystemRoot в библиотеке динамических ссылок ntdll.dll."

В строке заголовка диалогового окна с сообщением об ошибке указано имя программы "SpartanClips.exe".

Следует отметить, что это не было фатальной ошибкой: программа все еще могла запускаться, и, насколько я вижу, она все еще работает нормально.

Каждый раз, когда программа запускается, я получаю одно и то же сообщение об ошибке.

В папке с программой [C:\Program Files (x86)\Spartan Standard] есть 2 исполняемых файла: "SpartanClips.exe" и "Lnch.exe", второй из которых, по-видимому, является средством запуска для внешних программ, например как системный браузер по умолчанию.

Теперь меню "Справка" в главном окне спартанца содержит ряд элементов, большинство из которых требуют запуска браузера, и если я щелкну любой такой пункт меню, я получу то же сообщение об ошибке, что и выше, но строку заголовка диалогового окна сообщения содержит имя программы "Lnch.exe".

Опять же, эта ошибка не является фатальной: системный браузер по умолчанию запускается и выводит меня на соответствующую веб-страницу.

Несмотря на то, что я еще не зарегистрировал программу, разработчик был готов оказать как можно больше помощи, но, к сожалению, он также озадачен тем, почему должна быть ошибка с ntdll.dll, потому что его программа не сделать какие-либо вызовы ntdll.dll, и он предположил, что может быть проблема с kernel32.dll или shell32.dll, потому что программа, "Lnch.exe", только вызывает эти две библиотеки при запуске браузера по умолчанию, и он предположил, что один или несколько из этих файлов могут быть повреждены, и, возможно, стоит проверить и восстановить их, а также загрузить и установить свежую копию самой спартанской программы.

Теперь деинсталляция и переустановка Spartan не имели значения, и ни один из них не выполнял "SFC /SCANNOW", который не нашел проблем.

Папка программы Spartan также содержит ряд других DLL:

Объем в диске С СИСТЕМА

Серийный номер тома 0CAC-7592

Каталог C: \ Program Files (x86) \ Спартанский Стандарт

2017-04-12 11:28 78,336 ASYCFILT.DLL

2017-03-18 19:18 8,704 COMCAT.DLL

2017-03-18 19:18 27,136 CTL3D32.DLL

2009-07-14 01:15 1,386,496 msvbvm60.dll

2017-04-28 02:19 605 936 OLEAUT32.DLL

2017-04-28 01:33 89,088 OLEPRO32.DLL

2014-12-26 14:40 86,016 SPELL32.DLL

1997-01-16 00:00 29 696 VB5STKIT.DLL

2002-11-15 15:43 225,280 vic32.dll

9 файл (ов) 2 536 688 байт

0 Dir(s) 836,495,990,784 байт бесплатно

Хотя я знаю, что представляют собой некоторые из этих DLL-библиотек, я немного озадачен некоторыми из них, особенно теми, которые имеют очень старые даты файлов. (Есть один файл, который датируется 2009 годом, другой, который датируется 2002 годом, и еще один, который датируется 1997 годом)!

Если кто-нибудь может дать мне несколько советов о том, как использовать Windows Event Viewer для поиска журнала неудачных вызовов ntdll.dll, я мог бы предоставить дополнительную информацию.

Кроме того, если бы кто-нибудь мог дать мне объяснение цели всех (или любых) из 9 DLL, перечисленных выше, я был бы очень признателен.

Последний запрос: если кто-то посчитает, что для этого поста могут понадобиться дополнительные полезные теги, я был бы очень признателен за предложения.

Заранее спасибо за помощь!

1 ответ

Это не странная ошибка. Разработчики назвали функцию ntdll.dll это доступно только в Windows 10, начиная с RS2 (Creators Update):

#if (NTDDI_VERSION >= NTDDI_WIN10_RS2)
_IRQL_requires_max_(PASSIVE_LEVEL)
NTSYSAPI
PCWSTR
NTAPI
RtlGetNtSystemRoot (
    VOID
    );
#endif // NTDDI_VERSION >= NTDDI_WIN10_RS2

Обратитесь в службу поддержки, чтобы получить версию для Windows 7.

Другие вопросы по тегам