У меня есть приложение ASP.NET, которое застревает при загрузке страниц (ничего не происходит, нет тайм-аута, ничего). В procmon я вижу ПЕРЕПОЛНЕНИЕ БУФЕРА для QueryInformationVolume и QueryAllInformationFile для default.aspx. Как я могу понять, что происходит?
Изменить: добавлены строки примера
23:11.7 w3wp.exe 8648 QueryInformationVolume D:\www\AppName\Default.aspx BUFFER OVERFLOW VolumeCreationTime: 11/8/2007 9:18:37 AM, VolumeSerialNumber: AA05-4B19, SupportsObjects: True, VolumeLabel: DAT؛ 23:11.7 w3wp.exe 8648 QueryAllInformationFile D:\www\AppName\Default.aspx BUFFER OVERFLOW CreationTime: 9/16/2008 9:38:26 PM, LastAccessTime: 9/2/2009 10:21:51 AM, LastWriteTime: 8/27/2009 4:49:00 PM, ChangeTime: 8/27/2009 4:49:00 PM, FileAttributes: A, AllocationSize: 4,096, EndOfFile: 644, NumberOfLinks: 1, DeletePending: False, Directory: False, IndexNumber: 0x5a00000002e419, EaSize: 0, Access: Generic Read, Position: 0, Mode: , AlignmentRequirement: Byte
Переполнение буфера - ничто. смотреть на Блог Марка Руссиновича для объяснения.
Указывают ли эти ошибки на проблему? Нет, это стандартный способ системы указать, что доступно больше информации, чем может поместиться в выходной буфер запрашивающего. Другими словами, система сообщает вызывающей стороне, что, если она скопирует все запрошенные данные, она переполнит буфер. Таким образом, ошибка действительно означает, что переполнения буфера удалось избежать, а не то, что оно произошло.
Суть в том, что ошибки переполнения буфера в трассировке Filemon не являются признаком проблемы с безопасностью и обычно не связаны с плохим программированием.
Путем отладки?
Это какое-то приложение, которое вы написали, или кто-то просто поместил его на веб-сервер, которым вы управляете?
Я не рекомендую использовать IISRESET, так как он имеет множество побочных эффектов. Вы остановили и перезапустили пул приложений, изменив файл web.config ИЛИ в самой оснастке IIS? Не могли бы вы дать больше информации о самом приложении ASP.NET?
QueryInformation - это код функции IRP (пакет запроса ввода-вывода). Ты можешь видеть Вот в MSDN, что это ошибка файловой системы. Перенаправляет ли IIS на общий доступ к файлам на другом сервере? Файлы заблокированы для записи? Возможно, другой процесс / приложение загружает файловую систему, а IIS ожидает Default.aspx.