Утилита для получения минидампа памяти. Обсуждение

Phoenix,
Вот теперь, начинаю понимать смысл.
Извиняюсь, за свою неграмотность в обсуждаемом вопросе. Просто, мы же берем в учет таких же неграмотных пользователей, как и я?
Тогда, наверное, проще именно этот reg-файл и подсунуть.
 
Тогда, наверное, проще именно этот reg-файл и подсунуть.
Кому то проще самому, но автотвик не помешает, думаю. Тем более если грамотно сделать (как Dragokas;) как бы намекаю).
Блин, я не успеваю вопросы писать до их ответов
Регистрация:24 окт 2014
Сообщения: 529
А так сразу и не скажешь..
 
Phoenix,
А 2046 это в чем указано, Кб, Мб, или просто б?
Регистрация:24 окт 2014
Сообщения: 529
А так сразу и не скажешь..
Да из них, наверное, половина только в обучении, а остальное в зоне свободного общения.
 
ScriptMakeR, В мегабайтах. И зависит от системы - у меня максимальный 3072, то есть больше сделать не получится. (учись студент :Biggrin:)
274598 Полный дамп памяти может быть недоступен на компьютерах, имеющих 2 или более гигабайт (ГБ) ОЗУ (Эта ссылка может указывать на содержимое полностью или частично на английском языке)
Для сохранения полного дампа памяти необходимо иметь на загрузочном томе файл подкачки, размер которого не меньше полного объема физической памяти плюс 1 МБ. В этом случае имя файла дампа указывается в поле Файл дампа памяти (по умолчанию — %SystemRoot%\Memory.dmp).

Для создания файла полного дампа памяти необходим дополнительный мегабайт на диске, поскольку при создании такого дампа Windows не только сохраняет содержимое памяти, но и формирует заголовок, содержащий подпись аварийного дампа памяти и значения некоторых переменных ядра. Информация, содержащаяся в заголовке, занимает меньше одного мегабайта, но размер файла подкачки увеличивается помегабайтно.
http://support.microsoft.com/kb/307973
То есть, автоматическое размещение и выбор размера могут сыграть роковую роль.
Думаю это можно скриптами задать. Вот тех задание для Dragokas :Dance4:
 
Последнее редактирование:
Выложу полезные коды, которые мне давал Phoenix, чтобы не затерялось:
http://support.microsoft.com/kb/949052
https://winplattools.codeplex.com/releases/view/119856
https://winplattools.codeplex.com/downloads/get/815671
https://winplattools.codeplex.com/SourceControl/latest#DumpConfigurator.hta
VB.NET / VBA:
'If OS is Vista or Higher set the IgnorePagefileSize value as per KB949052
    If Left(g_strOSVersion,1) => 6 Then
        strKeyPath = "System\CurrentControlSet\Control\CrashControl"
        strValueName = "IgnorePagefileSize"
         oReg.SetDWORDValue HKEY_LOCAL_MACHINE,strKeyPath,strValueName,1
    End If[/php]

[php]'*****************************************************************
'  Calculates the estimated requirement for the selected dump types
'*****************************************************************
Function GetEstimatedDumpMB(intDumpType)
      
        Select Case intDumpType
            Case "1"               'Complete Dump Selected
                                '32bit and 64bit actually return the same values for complete (visible mem + 1MB)
                If g_strOSArch = "32-bit" Then
                                      
                    GetEstimatedDumpMB = g_IntMemVisible + DUMP_HEADER_32BIT 'Return Visible MEM +1MB for dump header
                  
                ElseIf g_strOSArch = "64-bit" Then
                  
                    GetEstimatedDumpMB = g_IntMemVisible + DUMP_HEADER_64BIT 'Return Visible MEM +64 bit dump header size
              
                End If
              
            Case "2"            'Kernel Dump Selected
                If g_strOSArch = "32-bit" Then
                  
                    If g_has3gb Then
                  
                        GetEstimatedDumpMB = 1024 + DUMP_HEADER_32BIT  ' with 3gb max kernel memory is 1GB
                      
                    Else
                  
                        'Maximum amount of kernel VA on x86 is 2GB
                        If g_intMemVisible < 2048 Then
              
                            GetEstimatedDumpMB = g_intMemVisible + DUMP_HEADER_32BIT    'less than 2gb ram just use size of complete dump
                          
                        Else  
                                      
                            GetEstimatedDumpMB = 2048 + DUMP_HEADER_32BIT 'Return 2GB (rounded up) potential 32-bit kernel VA +1MB for dump header
                                  
                        End If
                      
                    End If
                  
                ElseIf g_strOSArch = "64-bit" Then
                  
                    'Return 33% of visible memory value as ESTIMATED Kernel dump size as per
                    'http://msdn.microsoft.com/en-us/library/cc266504.aspx
                    GetEstimatedDumpMB = Cint(g_intMemVisible/3) + DUMP_HEADER_64BIT
                  
                   
                End If
        End Select
      

End Function
 
Dragokas, Спасибо. Я немного поясню.
PHP:
'If OS is Vista or Higher set the IgnorePagefileSize value as per KB949052
   IfLeft(g_strOSVersion,1)=>6Then
        strKeyPath ="System\CurrentControlSet\Control\CrashControl"
        strValueName ="IgnorePagefileSize"
         oReg.SetDWORDValue HKEY_LOCAL_MACHINE,strKeyPath,strValueName,1
   EndIf
На Vista Home Basic SP2 не было параметра IgnorePagefileSize, соответственно и дампы не могли создаться.
В следующем куске кода - расчёт выбранного уровня дампа для ОС с учётом разрядности... рекомендую.
 
Последнее редактирование:
Назад
Сверху Снизу