Ошибка создания дампа Adplus - доступ запрещен - PullRequest
2 голосов
/ 07 июня 2011

Я пытаюсь получить дамп для устранения проблем с памятью в процессах ASP.NET (Windows 2003 R2 SP2 x64):

adplus -hang -o f:\dumps -pn w3wp.exe -quiet

Существует девять w3wp.exe (все с разных сайтов). Каждый раз, когда я запускаю adplus, как указано выше, некоторые дампы завершаются с ошибкой:

WriteFullMemory.Memory.Read(0x100ea0000, 0x10000) failed 0x80070005, ABORT.
Dump creation failed, Win32 error 0n5
    "Access is denied."

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

  • У меня есть полные права администратора
  • На целевом жестком диске достаточно места
  • Я отключил пинг и защиту от сбоев в IIS, чтобы IIS не убивал процессы во время дампинга adplus.

Что-нибудь еще, что я должен проверить? Кто-нибудь еще сталкивался с этой проблемой? Версия Adplus 7.01.002 (27.02.2009) (скачана пару дней назад из последней версии SDK)

Ответы [ 2 ]

2 голосов
/ 07 июня 2011

Это из-за сбоя чтения недоступной памяти.Чтобы избежать этого, вы можете использовать что-то вроде cdb / windbg и использовать команду .dump /mA для генерации полного дампа памяти.

.dump /mA такой же, как .dump /ma, за исключением того, что он игнорирует сбой чтения недоступной памяти и продолжает мини-дампгенерация.

.dump параметры

Параметр / mA эквивалентен / ma, за исключением того, что он игнорирует любой сбой при чтении недоступной памяти и продолжает генерировать мини-дамп.

HTH

1 голос
/ 07 июня 2011

Не имеет значения, если вы являетесь членом администратора, вам все равно необходимо повысить привилегии.

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

...