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

Чем открыть файл pdb?

Расширение pdb с английского языка расшифровывается, как база данных программы. Файлы, созданные в этом формате, используются такими программами, как например, Pegasus, Quicken, также Palm Pilot – программное обеспечение. Данные хранятся в структурированном формате, также открытие таких файлов зачастую может быть произведено только программами, в которых pdb файл был создан.

Существуют несколько вариантов программ, с помощью которых можно открыть файл pdb. Выбор той или иной программы зависит непосредственно от самого файла. Если это формат базы данных, то открыть его можно с помощью Microsoft Visual Studio NET либо Intuit Quicken. Если это формат Palm Desktop, то открыть файл pdb можно с помощью программ LLUSoft PDB Explorer, либо PRODEC Desktop PDB Viewer, либо текстовым редактором. Если это расширение используется базой данной PowerDesigner, то открыть файл pdb можно с помощью программы Sybase PowerDesigner.

Так как в основном это расширение используется для электронных книг, то рассмотрим два основных вида таких форматов. iSilo pdb – это расширение для большинства карманных устройств, отличительная особенность такого формата это высокая степень сжатия текста. Открывается при помощи Adobe Acrobat, который можно скачать на официальном сайте Adobe,и который читает видео, звуковые и текстовые файлы, или при помощи приложения Isilo. PalmDoc – тоже популярный pdb формат, но степень сжатия текста гораздо ниже, графика и гиперссылки не поддерживаются. Открыть можно с помощью большинства программ для электронных книг.

Хотелось бы посоветовать одну из таких программ. Ice Book Reader поддерживает этот формат и скачивается бесплатно. Считается лидером среди подобных программ, поддерживает книжный вид, сохранение книг в библиотеке и чтение вслух.

Формат PDB может быть нескольких основных модификаций:

  • - расширение PDB (полн. Palm Desktop Database File ) представляет собой файл базы данных, ассоциирующийся с платформой Palm OS. ОС Palm - ранняя операционная система, функционирующая на базе различных мобильных устройств. Принципиальная ее особенность - это фактическое отсутствие файловой системы, поэтому хранение и обработка данных производится непосредственно в памяти в рамках СУБД.

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

Форматирование PDB расширения поддерживается только на базе “родной” ОС Palm, однако воспроизвести его на платформе другой операционной системы можно с использованием некоторых браузеров, самыми популярными среди которых являются XnView и Palm Desktop . Допускается и сетевая загрузка PDB файла посредством специализированных Интернет-ресурсов.

  • формат PDB (полн. Protein Data Bank ) может выступать в качестве “Базы данных протеинов и белков”. Protein Data Bank - всемирно признанный реестр данных всевозможных типов белков и протеинов. Трехмерные координаты атомов, химический состав, структура компонентов молекул белка - это лишь самый незначительный перечень ключевых параметров, которые может включать в себя стандартный PDB файл.

Основное практическое назначение данного формата - это хранение и обмен данными между пользователем и международным реестром Protein Data Bank .

PDB файлы доступны для визуализации, форматирования и графического наполнения с использованием целого ряда специализированных программных комплексов молекулярного анализа, например, Avogadro или Richardson Lab KiNG .

  • PDB файлы также могут относится к категории файлов Program Database (файлы базы данных). Особенностью формата PDB является уникальная структура данных, которая распознается только “родным” для него приложением. Например, PDB файл, скомпилированный посредством плагина Pegasus , будет не доступен в Microsoft Visual Studio .
  • расширение PDB (полн. PowerDesigner Database Backup File ) представляет собой файл резервной копии базы данных, сгенерированной в PowerDesigner . Основное практическое назначение PDB файла - это восстановление поврежденной или утраченной БД.

Программы для открытия PDB файлов

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

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

  • в ОС Windows используются DC & Co iSilo , Fictionwise eReader , LLUSoft PDB Explorer , XnView и Palm Desktop ;
  • на базе ОС Mac PDB будет доступен с применением программных плагинов Fictionwise eReader , PorDiBle , txt2pdbdoc , XnView , Planamesa NeoOffice и Lemkesoft GraphicConverter .

Примечательно, что расширение адаптировано и для использования на платформе Linux c помощью программных приложений txt2pdbdoc и XnView .

Когда PDB файл применяется в качестве “Базы данных протеинов и белков”, могут быть использованы следующие утилиты:

  • в ОС Windows - Richardson Lab KiNG , RasMol , Jmol и Avogadro ;
  • на базе ОС Mac PDB формат будет доступен с применением программных плагинов Apple Safari with JmolApplet or Protein Workshop applet и Avogadro .

Следует отметить, что расширение может использоваться и на платформе Linux c помощью целого комплекса программных приложений, включая Mozilla Firefox with JmolApplet or Protein Workshop applet , Richardson Lab KiNG , RasMol , Jmol и Avogadro .

Если PDB формат относится к категории файлов Program Database (файлы базы данных), то для редактирования файла в ОС Windows можно использовать программы Intuit Quicken , Microsoft Visual Studio 2010 и Mint.com .

Редактирование PDB файлов поддерживается и на базе ОС Mac с помощью Mint.com и Intuit Quicken Essentials for Mac .

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

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

  • поврежден или инфицирован файл;
  • файл не связан с реестром ОС (выбрано некорректное приложение для воспроизведения или не произведена инсталляция конкретного плагина);
  • недостаточно ресурсов устройства или ОС;
  • поврежденные или устаревшие драйвера.

Конвертация PDB в другие форматы

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

Почему именно PDB и в чем его достоинства?

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

  • файла базы данных, ассоциирующийся с платформой Palm OS ;
  • Базы данных протеинов и белков ”, где установлены трехмерные координаты атомов, химический состав, структура компонентов молекул белка;
  • файлов Program Database (файлы базы данных);
  • резервной копии базы данных.
диванный аналитик 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

You"re here because you have a file that has a file extension ending in .pdb. Files with the file extension .pdb can only be launched by certain applications. It"s possible that .pdb files are data files rather than documents or media, which means they"re not meant to be viewed at all.

what is a .pdb file?

A variety of applications are associated with the .pdb file extension. It is used as a program database file type that many applications use such as MS Visual Studio, Pegasus, etc. However, in this format, .pdb files usually cannot be opened by just any application other than the application installed with it. This file extension is also used as a Palm Desktop Database File wherein it is also used by Palm-based PDA devices. These files contain variety of information. They can be spreadsheets, databases, images, etc. .pdb files are also files in the Protein Data Bank File format; a format used when studying structures of protein which is why these files are mostly used by the Research Collaboratory for Structural Bioinformatics. The .pdb file extension is also used as PowerDesigner Database Backup File used by PowerDesigner database wherein these .pdb files refer to data that this database saves as well as they also contain other file references.

how to open a .pdb file?

Launch a .pdb file, or any other file on your PC, by double-clicking it. If your file associations are set up correctly, the application that"s meant to open your .pdb file will open it. It"s possible you may need to download or purchase the correct application. It"s also possible that you have the correct application on your PC, but .pdb files aren"t yet associated with it. In this case, when you try to open a .pdb file, you can tell Windows which application is the correct one for that file. From then on, opening a .pdb file will open the correct application.

applications that open a .pdb file

Microsoft Visual Studio

Microsoft Visual Studio

Microsoft Visual Studio is an integrated development environment (IDE) produced by Microsoft. It has a code editor that supports syntax highlighting and code completion using IntelliSense for not only variables, functions and methods but also language constructs like loops and queries; includes a debugger that works both as a source-level debugger and as a machine-level debugger; includes a host of visual designers to aid in the development of applications and other tools. Visual Studio permits developers to write extensions for Visual Studio to expand its capabilities. These extensions are linked to Visual Studio and extend its functionality. Extensions come in the form of macros, add-ins, and packages. Macros represent repeatable tasks and actions that developers can write programmatically for saving, replaying, and distributing; add-ins gives access to the Visual Studio object model and can interact with the IDE tools; and packages can create designers and other tools, as well as integrate other programming languages.

Palm Desktop

Palm Desktop is an application that comes with all Palm Devices. It is a personal information manager that can be used with Microsoft Windows, Mac OS or Mac OS X. It combines the functions of an address book, calendar, a task manager, and a journal (notes). Palm Desktop allows users to sort, edit, view, and back up data from their Palm handhelds to their personal computer. It synchronizes the devices via Palm’s HotSync application. Alternatively, it may also be utilized as a standalone computer program. It comes with various options to send and share data from one user to another. Other additional features include expenses tracking, customization and desktop alarms, among others. Higher version of this software fixes all known bugs of its prior version. Palm Desktop 6.2 works with Windows Vista, Windows XP Home, Windows XP Professional and Windows Media Center.

a word of warning

Be careful not to rename the extension on .pdb files, or any other files. This will not change the file type. Only special conversion software can change a file from one file type to another.

Название (англ.): Palm Desktop Database File

Название (рус.): Файл базы данных Palm Desktop

Разработчик: Palm

Описание: PDB также известный как Palm Desktop Database File представляет собой формат файла базы данных используемый в операционной системе Palm OS. Разработчиком данного формата является Palm – американская компания, специализирующаяся на производстве программного обеспечения для ОС Palm, а также смартфонов и карманных компьютеров. Файлы этого типа используются для хранения различных данных. Их внутреннее содержимое может быть представлено графикой, текстом, картами, базами данных и т.п. Форматом поддерживается форматирование текста, а также использование стилей шрифтов. В Windows файлы PDB могут быть открыты с помощью XnView, Calibre и некоторых других программах.

Формат 2

Название (англ.): Program Database File

Название (рус.): Файл базы данных

Разработчик: Нет данных

Описание: PDB или Program Database File представляет собой формат файла базы данных. Файлы этого типа могут быть используемы различным программным обеспечением, к примеру, такими приложениями как MS Visual Studio, Intuit Quicken. Содержащаяся в них информация хранятся в строго структурированном виде. Как правило, файлы PDB сохраняются в собственном формате. При этом конкретный PDB-файл может быть открыт только той программой, которая его создала. Например, PDB-файл, созданный с помощью Microsoft Visual Studio нельзя будет открыть в Palm Pilot.

Для открытия (редактирования) файла этого формата можно использовать следующие программы:

Формат 3

Название (англ.): Protein Data Bank File

Название (рус.): Данные молекул белков и нуклеиновых кислот

Разработчик: wwPDB

Описание: PDB также известный как Protein Data Bank File представляет собой специальный формат файла данных. Файлы этого типа можно встретить в программах, предназначенных для хранения результатов исследований в сфере биологии и биохимии. Разработчиком данного формата является wwPDB. Внутреннее содержимое PDB-файлов представлено трехмерными координатами, описывающими атомную структуру белкового или другого химического соединения. В настоящее время формат PDB является стандартным форматом хранения данных, полученных в результате изучения белковых соединений. Просмотреть файлы PDB можно с помощью специальных программ QuteMol, RasMol или Avogadro.

Для открытия (редактирования) файла этого формата можно использовать следующие программы:

Формат 4

Название (англ.): PowerDesigner Database Backup File

Название (рус.): Резервная копия базы данных PowerDesigner

Разработчик: Sybase

Описание: PDB иначе PowerDesigner Database Backup File представляет собой собственный формат файла резервной копии используемой в PowerDesigner – профессиональном программном инструменте для создания моделей данных и разработки архитектуры предприятий. Разработчиком формата является Sybase – американская компания, специализирующаяся на производстве программного обеспечения для управления базами данных. Внутреннее содержимое файла PDB обычно представлено информацией из базы данных, а также ссылками на другие файлы. Предназначаются PDB-файлы для создания резервной копии основной базы данных. Открыть их можно с помощью «родной» программы PowerDesigner.

Для открытия (редактирования) файла этого формата можно использовать следующие программы:

Loading...Loading...