Не фатальная ошибка Windows 2003 x64: rundll32.exe - точка входа не найдена

1105
vallismortis

Я пытаюсь получить немного больше пользы от Windows Server 2003 R2 Standard x64 Edition, и недавно (в течение последних двух недель) я получал следующую (не фатальную) ошибку, возникающую при выполнении определенных действий:

rundll32.exe - точка входа не найдена

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

rundll32.exe - точка входа не найдена

Иногда это происходит при попытке заархивировать папку с помощью 7-zip, но это всегда происходит при выборе Desktopвкладки в Display Propertiesдиалоговом окне.

В этой системе не было обнаружено вирусов или вредоносных программ. Чтобы быть уверенным, я переустановил ОС на другом (но почти идентичном ноутбуке) и получаю те же ошибки. К сожалению, эти ошибки снова начались на новой установке в какой-то момент после того, как я начал устанавливать программное обеспечение.

Я не смог исключить обновления Windows (некоторые из них были применены после того, как я начал устанавливать программное обеспечение) или стороннее программное обеспечение (Skype 7.11, JDK 8 64, 7-zip или Dropbox). Ошибки по-прежнему возникают, когда ни одна из этих программ не запущена. Тем не менее, Skype, 7-zip и Dropbox имеют хуки для Windows, поэтому я считаю, что одна из них является вероятной причиной.

Я продолжу тестирование, чтобы уменьшить количество переменных (удалить программное обеспечение и потенциально начать установку ОС с нуля). Однако, если у кого-то есть другие идеи для устранения этой проблемы, я с удовольствием попробую альтернативы.

Например:

  • Существуют ли какие-либо особые хуки для установленного программного обеспечения, которые могут быть вызваны специально при нажатии на вкладку «Отображение»?

  • Есть ли способ определить, что пытается быть вызвано через rundll32.exe?

  • Есть ли места в реестре Windows, где я мог бы посмотреть, что может быть вызвано?

В kernel32.dllсистемах, в которых возникла проблема, - 1 518 080 байт, а CRC32 равен 14CC51C9, что соответствует исходному установочному носителю.

Как было рекомендовано в предыдущем комментарии (теперь по какой-то причине он был удален), я запустил средство проверки системных файлов, которое оказалось без проблем.

1
Вам необходимо определить, какое программное обеспечение вызывает эту проблему. Мы не можем помочь вам сделать это. Ramhound 8 лет назад 3
Должно быть довольно легко выяснить, какое программное обеспечение вызывает проблему. Moab 8 лет назад 1
Обратите внимание, что Windows Server 2003 завершил свою работу 14 июля 2015 года. Он больше не получает даже самые важные обновления безопасности. ChrisInEdmonton 8 лет назад 0
@ChrisInEdmonton Только true, если у вас нет платного контракта на поддержку. vallismortis 8 лет назад 1
Аналогично, но для другой функции API: [В Windows 2000 «Точка входа в процедуру EncodePointer не может быть расположена в библиотеке динамических ссылок KERNEL32.dll»] (http://superuser.com/q/930689/53590) a CVn 8 лет назад 0

3 ответа на вопрос

4
NathanB

У меня была та же проблема, которая была прослежена до Dropbox (3.10.7).

Большинство установок Dropbox на ПК, с которыми у меня возникла проблема, были установки «на пользователя», поэтому они были локализованы только для одного профиля пользователя компьютера.

Мне удалось устранить ошибку, по существу сбросив настройки пользователей в Dropbox - я сделал это, переименовав или удалив папку C:\Documents and Settings\%username%\Application Data\Dropbox- после того, как папка была переименована, попросили пользователя выйти из системы и вернуться обратно, а ошибка исчезла. Им просто нужно было вернуться в Dropbox и выполнить синхронизацию.

ПК, на которых у меня было это, были ПК с Windows XP SP3. и смог отследить его до Dropbox через программное обеспечение AV, обнаружив изменение, которое Dropbox произвел на машине. Я не видел ошибку, rundll32.exeкак указано выше, но испытал ее с Adobe Reader, а также несколько корпоративных приложений.

Надеюсь, что это также помогает. У меня еще не было ошибки, и я смог сохранить текущую версию Dropbox.

Спасибо за дополнительную информацию. В этом случае Dropbox 3.10.7 был установлен на новую систему и сразу же получал сообщение об ошибке. Если проблема возникнет или я обнаружу необходимость обновить ее до последней версии, я попробую ваше решение. vallismortis 8 лет назад 0
3
vallismortis

Dropbox (3.10.7) was causing this error. I reverted back to August 15, 2015 stable build 3.8.8 and still encountered the error. Reverting back to July 9, 2015 stable build 3.6.9 has resolved the error.

See Dropbox Release Notes, which contains links to older versions.

I determined that Dropbox was the cause of this problem by systematically uninstalling Skype, Java, 7-zip and Dropbox. The problem was reproducible up to the point where Dropbox was uninstalled. I reinstalled all software except for Dropbox, and the error was not occurring.

After installing Dropbox 3.8.8, the error immediately started being reproducible again. I again uninstalled Dropbox and the error went away. After installing Dropbox 3.6.9, the error is not reproducible.

No reboots were required.

I've also reported the problem to Dropbox.

Update: Several days later, Dropbox re-upgraded itself to version 3.10.7, and the error is no longer occurring. It seems that a direct install of 3.10.7 causes the error, but installing an old version and allowing it to upgrade avoids the problem.

Любые идеи о том, как вы обнаружили, что Dropbox был причиной этой проблемы? Lucky 8 лет назад 1
@ Лаки Я обновил свой ответ, чтобы объяснить мой подход к устранению неполадок. vallismortis 8 лет назад 0
Спасибо за редактирование. Это будет полезно для будущих читателей, у которых есть такая же проблема. Lucky 8 лет назад 1
1
a CVn

The problem is that the GetNamedPipeServerProcessId Windows API function did not exist in Windows Server 2003.

According to the MSDN article on GetNamedPipeServerProcessId, the minimum supported version for this API call for server-line Windows versions is Windows Server 2008. That's two versions later (you have 2003, there was 2003 R2, then 2008).

There's nothing you can do to "fix" this. Downgrading to software that doesn't use this particular API is a workaround, but it means you are stuck at old versions.

And of course, for Windows Server 2003, which was released in April 2003, mainstream support ended in July 2010 and extended support ended in July 2015. It is unsupported by Microsoft, and not supported (obviously) by the vendors of software that you want to use (because otherwise you wouldn't be asking this question here). It's time to upgrade.

Я на самом деле бегу 2003 R2, я обновил свой вопрос соответственно. Я иногда забываю эту деталь - «R2» отображается в некоторых логотипах (экран блокировки), но не в других (меню «Пуск»). Я ценю дополнительную информацию. vallismortis 8 лет назад 0