Process Explorer и Windows Debugging Symbols

Категории: Программы, Разработка ПО
Тэги: , , , ,

Нередко для траблшутинга упавшего приложения пользовался WinDbg в паре с Process Explorer от Sysinternals. Однако сегодня узнал интересное, оказывается в Procerss Explorer можно прописать путь к папке с символами и указать адрес к Microsoft Symbol Server для оперативной подгрузки недостающих символов. Для этого в настройках в ‘Options->Configure Symbols…’ поле Symbols Path надо написать:

srv*C:\Windows\Symbols* http://msdl.microsoft.com/download/symbols

Вот так:

Сначала путь к локальной папке символов и потом адрес Symbol Server.

И теперь при просмотре свойств процесса во вкладке Threads становится видно что и где не отработало.

Windows Vista, System volume и Boot volume

Категории: Программы, Умный дом
Тэги: , , ,

В своё время, установив Windows Vista, я допустил некоторый промах с конфигурацией жёстких дисков. Особенность заключалась в том, что диск, который предполагался быть с данными, был подключён к разъёму SATA_1 и в BIOS определялся как First Hard Drive, а диск с системой к SATA_2 и определялся он, соответственно, как Second Hard Drive. Vista же при установке, как обычно это делают Винды (камень в огород MS), прописала Windows Boot Manager на первый диск, а Windows Boot Loader на второй. Таким образом в стандартной оснастке “Disk Managment” диск с данными виделся как “Disk0″ и был помечен тегом System, а диск с системой, на котором физически расположена папка Windows, “Disk1″ с тегом Boot. Однако об этом я вспомнил позднее, а сначала, отключив физически диск с данными, при загрузке узрел “Invalid System Disk. Insert disk and press any key”. Делать нечего, вернул все на место, загрузился и стал ковыряться.

Но нет худа без добра. В процессе поисков откопал отличную бесплатную утилиту (написана, кстати, на .NET ;) ) для конфигурирования процесса загрузки – VistaBootPRO. Работает, кстати, не только на Vista.

VistaBootPRO allows users to easily and neatly organize their boot configuration entries from within all flavors of Windows.

System Requirements: Windows XP (Home, PRO, x64, MCE 2005), 2003 Server, Vista, or Longhorn Server. All systems must have .NET 2.0 Framework

  • Date Released: Friday April 27, 2007
  • File Name: VistaBootPRO_3.3.0.exe
  • MD5 Sum: 13DA6433953183268F189A5B682926FF
  • SHA-1 Hash: 12E3A36C0C758E60DAFBD822B45A7F4EEDF89AD0
  • Digital Signature: Hawaiian Style Organization LLC.
  • VeriSign Timestamp: Monday, May 28, 2007 1:18:32 PM
  • File size: 1.59 MB (1,669,368 bytes)

Итак, для решения проблемы нам понадобится.

  1. VistaBootPRO
  2. Установочный, загрузочный диск Windows Vista.
  3. Файловый менеджер, который умеет показывать скрытые папки и файлы(например, тот же explorer, но я из эстетических соображений покаp скрытых файлов там отключаю)

Последовательность действий:

  1. Раскручиваем корпус и меняем местами два жёстких диска (понятно, если необходимо).
  2. Выставляем в BIOS первое загрузочное устройство снова диск с данными.
  3. Загрузившись устанавливаем и запускаем VistaBootPRO. В разделе Manage OS Entrie, меняем Boot Drive в меню “Change Boot Drive” на дсик с системой.
  4. Запускаем файловый менеджер, переписываем папку Boot и файл bootmgr из корня диска с данными на диск с системой. Файл BCD может не переписаться, это не страшно.
  5. Перегружаемся, грузимся с установочного диска с Windows Vista, выбираем язык установки, нажимаем Next и потом выбираем пункт “System repair”. Он находится слева внизу, после чего в открывшемся окне, выбираем пункт “Startup Repair”. Ждём окончания процесса восстановления. Перегружаемся, выставляя загрузочный диск в BIOS диск с системой. Voila!
  6. Запускаем снова VistaBotPRO и в разделе “View Settings” лицезреем:

    Windows Boot Manager
    ——————–
    identifier {bootmgr}
    device partition=C:
    description Windows Boot Manager

    Windows Boot Loader
    ——————-
    identifier {current}
    device partition=C:
    path \Windows\system32\winload.exe
    description Microsoft Windows Vista

Теперь можно смело отсоединять диск с данными.