Андроид. Windows. Антивирусы. Гаджеты. Железо. Игры. Интернет. Операционные системы. Программы.

С что такое файл pdb. Что делать, если невозможно найти или открыть файл pdb — эффективные решения проблемы. Программы для открытия или конвертации PDB файлов

диванный аналитик 6 июля 2011 в 15:19

Сопоставление PDB и исполняемых файлов

  • Чулан *

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

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

Однако для того, что бы проанализировать дамп наименьшими силами необходимы файлы отладочной информации, в частности PDB-файлы, осуществляющие обратную связь от исполняемого файла к исходникам. В общем виде PDB файлы в моей компании сохраняются в отведенной и доступное всем место.

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

Первое что необходимо было сделать это собрать версию из тех же исходников, что не стало проблемой (будем называть эту сборку PDB_сборкой). В результате я получил PDB файлы примерно того же содержания. Примерно, потому что бинарно они не идентичны. Гарантию того, что они будут корректны для сборки у пользователя так же нету, однако опыт отладки подсказывает что большая часть проблем при помощи полученных PDB Можно решить.

Далее мне требовалось найти способ обмануть отладчик Visual Studio и заставить загружать эти PDB (для честности надо сказать что WinDbg может загружать практически куда угодно что угодно. Для этого надо выполнить команду.symopt+0x40). Проблема здесь заключается в том, что для каждой сборки генерируется GUID, который зашивается в глубины всех исполняемых и отладочных файлов. Так же студия при загрузке проверяет отметку времени последней записи в файл, которая должна быть идентична бинарному файлу.

Поиск в интернете меня навел на утилиту ChkMach , которая позволяет подменить GUID.

На деле оказалось что утилита не смогла справиться со всеми моими PDB файлами (если PDB файл размером больше примерно 70 метров утилита отказывается его перепрошивать).

Было решено написать нечто свое, что позволило бы сделать нужные махинации.

Алгоритм получился примерно следующий:
1) Загрузить исполняемый файл из сборки ушедшей пользователю и получить из него GUID. Этот GUID надо будет записать в PDB из PDB_сборки.
2) Загрузить PDB файл из PDB_сборки.
3) Получить GUID зашитый в PDB.
4) Найти все вхождения полученного GUID в PDB и заменить их на GUID полученный в пункте 1.

Я нашел два способа получить GUID из исполняемого файла.
Первый способ - это использование интерфейсов IDia. В Visual Studio (%VSINSTALLDIR%\DIA SDK\Samples\) есть пример использования. У этого способа однако есть проблема. Если для загружаемого исполняемого файла не найден PDB-файл, то исполняемый файл загружен не будет.

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

Что касается пункта 2 и 3, оказалось их крайне легко решить, воспользовавшись интерфейсами IDia.

Bool LoadDataFromPdb(const wchar_t *pdbFileName,
IDiaDataSource **ppSource,
IDiaSession **ppSession,
IDiaSymbol **ppGlobal,
GUID * guid)

CoInitialize(NULL);

Hr = CoCreateInstance(__uuidof(DiaSource),
NULL,
CLSCTX_INPROC_SERVER,
__uuidof(IDiaDataSource),
(void **) ppSource);

If (FAILED(hr))
{
wprintf(L"CoCreateInstance failed - HRESULT = %08X\n", hr);

Return false;
}

Hr = (*ppSource)->loadDataFromPdb(pdbFileName);

If (FAILED(hr))
{
wprintf(L"loadDataFromPdb failed - HRESULT = %08X\n", hr);
return false;
}

Hr = (*ppSource)->openSession(ppSession);

If (FAILED(hr))
{
wprintf(L"openSession failed - HRESULT = %08X\n", hr);
return false;
}

Hr = (*ppSession)->get_globalScope(ppGlobal);

Return !FAILED((*ppGlobal)->get_guid(guid));

Поиск и замена GUID в файле, я думаю является, достаточно простой задачей, и описывать ее я не буду.

Однако стоит остановиться на одной мелочи.

Объявление структуры GUID выглядит так.

Typedef struct _GUID {
unsigned long Data1;
unsigned short Data2;
unsigned short Data3;
unsigned char Data4[ 8 ];
} GUID;

В силу того, что в конечном виде этот GUID предполагалось писать как массив байтов, необходимо было учесть порядок байт, и как следствие развернуть поля Data1, Data2 и Data3

Вдохновение для статьи и поделки бралось отсюда debuginfo.com

Теги: отладка кода, отладочная информация, pdb, dump

Принято считать, что файлы pdb могут быть не только представлены в виде документов или средствами СМИ, но и быть частью системы компьютера, поэтому редко, когда обыкновенный пользователь задается вопросом, что делать, если невозможно найти или открыть файл pdb.

Важно понимать, что если файлы с расширением pdb скрыты, то лучше с ними не экспериментировать.

Определение формата pdb

Когда речь идет о расширении файла формата pdb, то сразу стоит сказать, что его применение характеризуется большим количеством способом.

Он представляет собой базу, где хранятся данные, необходимые для работы с Visual Studio или Pegasus.

Как правило, такой формат не может быть любой программой или универсальным приложением.

Кроме того, pdb необходим для Palm Desktop.

Что касается информационной базы, то она может быть совершенно разного характера.

Например: таблицы, качественные объемные изображения и прочая документальная информация. Также данный формат может служить резервной копией данных в программе PowerDesigner .

Как открыть?

На сегодняшний день известно множество способов, как открыть файл с расширением pdb.

Самый простой вариант – это кликнуть дважды на файл и тогда система компьютера самостоятельно определить программу, посредством которой можно продолжать работу.

Однако это происходит довольно редко.

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

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

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

Действуем по следующей инструкции:

1 Открываем любой браузер и вводим название программы. Как правило, первыми ссылками в поисковике появляются адреса на прямого разработчика Adobe. Далее необходимо скачать программу на ПК. Чаще всего для этого нужно просто щелкнуть мышкой по названию Acrobat Reader и скачивание осуществляется в автоматическом режиме. Возможно закачку произвести и с других источников, но перед использованием и установкой на ПК, необходимо проверить источник на наличие вредоносных программ или вирусов, которые могут нанести серьезные повреждения системе. У некоторых пользователей данная программа может быть на дисках, где в приложении есть инструкция по установке

2 По завершению скачивания, кликаем на установочный файл. Чтобы инициировать процесс, необходимо согласиться со всеми требованиями лицензии и следовать простым подсказкам. Далее необходимо запустить программу. В основном меню выбираем файл с форматом pdb

3 Если в будущем планируется использовать Acrobat Reader для этого же файла, то кликаем на файл правой кнопкой мыши и находим пункт «открыть с помощью» и выбираем соответствующую программу . Если в списке ее нет, то нажимаем обзор и указываем следующий путь: Programm Files Acrobat Reader файл формата exe. Ставим галочку напротив пункта, использовать для всех файлов данного типа

4 Зачастую такую задачу требуется решить и в смартфоне, поскольку многие пользователи привыкли пользоваться электронным форматом документов или читать книги. Важно отметить, что Acrobat Reader существует и для мобильного устройства , поэтому в зависимости от платформы (Android/IOS), можно скачать приложение

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

Вне зависимости от программы, алгоритм выполнения задачи остается, как правило, одним и тем же, поэтому важно обратить на альтернативные программы, которые так же помогут открыть файл формата pdb.

XnView 2.48

Поскольку объемные изображения также могут быть в формате pdb, то программа XnView 2.48 станет оптимальным вариантом для решения задач по работе с фотографиями.

С ее помощью можно выполнять обыкновенный просмотр, конвертацию или корректировку самого изображения.

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

Стоит отметить, что XnView 2.48 поддерживает порядком 400 других форматов фотографий и рисунков, поэтому ее выбирают многие пользователи.

С ее помощью возможность конвертировать изображения целыми пакетами.

Интерфейс не представляет каких-либо сложностей, поскольку ориентирован на широкий круг потребителей.

Если поставить курсор на определенное изображение, то сразу можно увидеть все доступные изменения, которые возможно сделать.

Что же касается отличительных особенностей, то здесь их множество:

1 Возможность бесплатного использования

2 Конвертация, как пакетная, так и единичная

3 Просмотр и обработка изображений

4 Не требует больших технических возможностей.

Calibre 2.78

Данная программа особенно покажется полезной для тех, кто имеет целые библиотеки с файлами формата pdb.

Кроме открытия файлом и возможности просмотра, Calibre 2.78 при необходимости поможет перевести документы или книги из одного формата в другой, поэтому функция мини конвертера здесь также присутствует.

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

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

К основным достоинствам можно отнести следующие аспекты:

  • Создание единого библиотечного каталога, в котором можно хранить архивы документов или книг, при необходимости совершать корректировку;
  • Сортировать информацию в зависимости от автора, жанра и других критериев, которые может задавать пользователь в самостоятельном порядке;
  • Закачка необходимых файлов в удаленном режиме, которые впоследствии отправляются на указанный электронный адрес;
  • из одного формата в другой.

OpenOffice

Когда необходимо организовать процесс работы с документами формата pdb, то данная программа подойдет как нельзя лучше.

В первую очередь она имеет автоматическую функцию проверки орфографии, что существенно сэкономить время делового человека на проверке.

Основным достоинством ресурса является ее бесплатное использование, что крайне важно для большинства пользователей.

Кроме того, исходный код находится в открытом доступе, а это значит, что при необходимости внесения каких-либо изменений, их возможно сохранить и настроить работу программы в индивидуальном порядке.

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

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

Среди существенных недостатков стоит отметить единственный аспект – это отсутствие портативного формата.

К основным достоинствам можно отнести:

  • Бесплатное использование на протяжении неограниченного периода времени;
  • Наличие редактора, посредством которого можно выполнить множество работ;
  • Для установки не потребуется большое количество памяти или новейших технических характеристик;
  • Наличие русского интерфейса.

Поскольку наличие трудностей в открытии формата pdb является довольно распространенной сложностью, то множество программ, которые появляются в сети, зачастую могут справиться с данной задачей.

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

Объявление

Формат файлов PDB Database

Формат файлов PDB - стандартный формат баз данных, используемый на КПК Palm, Pegasus, Quicken и др. Этот формат данных позволяет хранить различные типы данных - электронные книги, документы, изображения, карты, таблицы и т.п. - в четко структурированном виде. Очень важно при этом знать, какая программа создала файл PDB, ведь правильно открыть и отобразить его можно только такой программой.

Технические сведения о файлах PDB

Файлы PDB используются языком программирования C++. В большинстве случаев это расширение используется на устройствах PalmPilote. Несмотря на то, что формат позволяет переформатировать текст, у него нет некоторых свойств и функций, которыми обладают современные форматы электронных книг (например, в файлах PDB можно создавать только простейшие таблицы). Формат PDB был разработан для устройств с небольшим объемом памяти Palm в 1990-х гг., и именно поэтому он использует технологию сжатия RLE.

Дополнительная информация о формате PDB

Резюме файла PDB

Эти файлы PDB можно просматривать с помощью два существующего (-их) прикладных (-ого) программных (-ого) средств (-а), как правило, Microsoft Visual Studio , разработанного Microsoft Corporation . Оно связано с один основным (-и) типом (-ами) файла (-ов), но часто встречается в формате Program Database . В большинстве случаев эти файлы относятся к Data Files .

Файлы PDB находятся на мобильных устройствах и настольных компьютерах, и их можно открыть в Windows и Mac. Рейтинг популярности данных файлов составляет «Низкий» и они обычно не используются.

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

Популярность типов файлов
Ранг Файла

Активность

Этот тип файлов по-прежнему сохранил актуальность и активно используется разработчиками и прикладными программными средствами. Хотя оригинальное программное обеспечение этого типа файлов может отодвигаться на второй план более новой версией (например. Excel 97 против Office 365), этот тип файлов по-прежнему активно поддерживается текущей версией программного обеспечения. Этот процесс взаимодействия со старой операционной системой или устаревшей версией программного обеспечения также известен как «обратная совместимость ».

Статус файла
Страница Последнее обновление


Типы файлов PDB

Ассоциация основного файла PDB

Файл PDB представляет собой файл базы данных используется несколькими приложениями. Он используется в C ++ язык программирования. Файл PDB используется для хранения отладочной информации о программе. Файл PDB создается из исходного файла во время компиляции. Они используются различными программами и, как правило, сохраняются в собственном формате. Она хранит данные в структурированной форме и обычно устанавливается в соответствующем приложении.


Попробуйте универсальное средство для просмотра файлов

В дополнение к продуктам, перечисленным выше, мы предлагаем вам попробовать универсальное средство для просмотра файлов типа FileViewPro. Данное средство может открывать более 200 различных типов файлов, предоставляя функции редактирования для большинства из них.

Лицензия | | Условия |


Устранение неполадок при открытии файлов PDB

Общие проблемы с открытием файлов PDB

Microsoft Visual Studio не установлен

Дважды щелкнув по файлу PDB вы можете увидеть системное диалоговое окно, в котором сообщается «Не удается открыть этот тип файла» . В этом случае обычно это связано с тем, что на вашем компьютере не установлено Microsoft Visual Studio для %%os%% . Так как ваша операционная система не знает, что делать с этим файлом, вы не сможете открыть его дважды щелкнув на него.


Совет: Если вам извстна другая программа, которая может открыть файл PDB, вы можете попробовать открыть данный файл, выбрав это приложение из списка возможных программ.

Установлена неправильная версия Microsoft Visual Studio

В некоторых случаях у вас может быть более новая (или более старая) версия файла Program Database, не поддерживаемая установленной версией приложения . При отсутствии правильной версии ПО Microsoft Visual Studio (или любой из других программ, перечисленных выше), может потребоваться загрузить другую версию ПО или одного из других прикладных программных средств, перечисленных выше. Такая проблема чаще всего возникает при работе в более старой версии прикладного программного средства с файлом, созданным в более новой версии , который старая версия не может распознать.


Совет: Иногда вы можете получить общее представление о версии файла PDB, щелкнув правой кнопкой мыши на файл, а затем выбрав «Свойства» (Windows) или «Получить информацию» (Mac OSX).


Резюме: В любом случае, большинство проблем, возникающих во время открытия файлов PDB, связаны с отсутствием на вашем компьютере установленного правильного прикладного программного средства.

Установить необязательные продукты - FileViewPro (Solvusoft) | Лицензия | Политика защиты личных сведений | Условия |


Другие причины проблем с открытием файлов PDB

Даже если на вашем компьютере уже установлено Microsoft Visual Studio или другое программное обеспечение, связанное с PDB, вы все равно можете столкнуться с проблемами во время открытия файлов Program Database. Если проблемы открытия файлов PDB до сих пор не устранены, возможно, причина кроется в других проблемах, не позволяющих открыть эти файлы . Такие проблемы включают (представлены в порядке от наиболее до наименее распространенных):

  • Неверные ссылки на файлы PDB в реестре Windowsтелефонная книга» операционной системы Windows)
  • Случайное удаление описания файла PDB в реестре Windows
  • Неполная или неправильная установка прикладного программного средства, связанного с форматом PDB
  • Повреждение файла PDB (проблемы с самим файлом Program Database)
  • Заражение PDB вредоносным ПО
  • Повреждены или устарели драйверы устройств оборудования, связанного с файлом PDB
  • Отсутствие на компьютере достаточных системных ресурсов для открытия формата Program Database

Викторина: Какой из представленных файлов - файл векторного изображения?

Верно!

Близко, но не совсем...

Уникальная вещь о векторных файлах, таких как AI и EPS является то, что графическими деталями (например, размеры и формы объектов) и текст остаются редактируемыми. Это позволяет сохранять и повторно открывать их в Illustrator и редактировать текст или другие элементы в графике.


Разбивка устройства расширения файла (настольный компьютер / мобильный телефон / планшет)


Событие дня

Формат файла BMP, также известный как растровое изображение, представляет собой общий формат файла, используемый с Pixelmap и растровых изображений. «Немного» в названии обозначает каждый пиксель, и «карта» является способом эти пиксели организованы на экран.



Как исправить проблемы с открытием файлов PDB

При наличии на компьютере установленной антивирусной программы можносканировать все файлы на компьютере, а также каждый файл в отдельности . Можно выполнить сканирование любого файла, щелкнув правой кнопкой мыши на файл и выбрав соответствующую опцию для выполнения проверки файла на наличие вирусов.

Например, на данном рисунке выделен файл my-file.pdb , далее необходимо щелкнуть правой кнопкой мыши по этому файлу, и в меню файла выбрать опцию «сканировать с помощью AVG» . При выборе данного параметра откроется AVG Antivirus, который выполнит проверку данного файла на наличие вирусов.


Иногда ошибка может возникнуть в результате неверной установки программного обеспечения , что может быть связано с проблемой, возникшей в процессе установки. Это может помешать вашей операционной системе связать ваш файл PDB с правильным прикладным программным средством , оказывая влияние на так называемые «ассоциации расширений файлов» .

Иногда простая переустановка Microsoft Visual Studio может решить вашу проблему, правильно связав PDB с Microsoft Visual Studio. В других случаях проблемы с файловыми ассоциациями могут возникнуть в результате плохого программирования программного обеспечения разработчиком, и вам может потребоваться связаться с разработчиком для получения дополнительной помощи.


Совет: Попробуйте обновить Microsoft Visual Studio до последней версии, чтобы убедиться, что установлены последние исправления и обновления.


Это может показаться слишком очевидным, но зачастую непосредственно сам файл PDB может являться причиной проблемы . Если вы получили файл через вложение электронной почты или загрузили его с веб-сайта, и процесс загрузки был прерван (например, отключение питания или по другой причине), файл может повредиться . Если возможно, попробуйте получить новую копию файла PDB и попытайтесь открыть его снова.


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


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

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


Совет: Если при попытке открыть файл PDB вы получаете сообщение об ошибке, связанной с.SYS file , проблема, вероятно, может быть связана с поврежденными или устаревшими драйверами устройств , которые необходимо обновить. Данный процесс можно облегчить посредством использования программного обеспечения для обновления драйверов, такого как DriverDoc .


Если шаги не решили проблему , и у вас все еще возникают проблемы с открытием файлов PDB, это может быть связано с отсутствием доступных системных ресурсов . Для некоторых версий файлов PDB могут потребоваться значительный объем ресурсов (например, память/ОЗУ, вычислительная мощность) для надлежащего открытия на вашем компьютере. Такая проблема встречается достаточно часто, если вы используете достаточно старое компьютерное аппаратное обеспечение и одновременно гораздо более новую операционную систему.

Такая проблема может возникнуть, когда компьютеру трудно справиться с заданием, так как операционная система (и другие службы, работающие в фоновом режиме) могут потреблять слишком много ресурсов для открытия файла PDB . Попробуйте закрыть все приложения на вашем ПК, прежде чем открывать Program Database. Освободив все доступные ресурсы на вашем компьютере вы обеспечите налучшие условия для попытки открыть файл PDB.


Если вы выполнили все описанные выше шаги , а ваш файл PDB по-прежнему не открывается, может потребоваться выполнить обновление оборудования . В большинстве случаев, даже при использовании старых версий оборудования, вычислительная мощность может по-прежнему быть более чем достаточной для большинства пользовательских приложений (если вы не выполняете много ресурсоемкой работы процессора, такой как 3D-рендеринг, финансовое/научное моделирование или интенсивная мультимедийная работа). Таким образом, вполне вероятно, что вашему компьютеру не хватает необходимого объема памяти (чаще называемой «ОЗУ», или оперативной памятью) для выполнения задачи открытия файла.

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


Установить необязательные продукты - FileViewPro (Solvusoft) | Лицензия | Политика защиты личных сведений | Условия |


Похожие публикации
Расширение файла .pdb
Категория файлов
Связанные программы ICE Book Reader
Palm Reader
Microsoft Visual Studio
Pegasus
Quicken