Может ли Delphi 5 сгенерировать файл .PDB, который может использовать VS? - PullRequest
12 голосов
/ 22 октября 2009

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

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

Так что мне было интересно - можно ли будет использовать Visual Studio в этом процессе? Насколько я знаю, формат файла .PDB довольно старый и хорошо документирован. Можно ли заставить компилятор Delphi каким-либо образом генерировать файлы .PDB для его скомпилированных результатов? Затем программа может быть отлажена с помощью Visual Studio, возможно, в гораздо большей степени, чем в исходной IDE.

Что ж, абсолютным Святым Граалем было бы перенести всю разработку на VS, просто сохранив компилятор из Delphi, но я представляю, что это было бы довольно невозможно.

Ответы [ 5 ]

12 голосов
/ 22 октября 2009

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

Мне любопытно, какие функции отладки вы ожидаете использовать в Visual Studio, которых нет в Delphi 5 и которые также не зависят от IDE, понимающего язык Delphi. Я всегда был довольно доволен Delphi 5.

5 голосов
/ 10 декабря 2010

Я пробовал tds2pdb , и он прекрасно работает для меня.

5 голосов
/ 15 апреля 2010

Кстати, вы можете проголосовать за эту функцию здесь .

Обратите внимание, что VS-совместимая отладочная информация будет полезна не только для отладки приложения (я согласен: лучше использовать Delphi), но и для таких инструментов, как Process Explorer. Например, Process Explorer может отображать читаемый человеком стек вызовов вместо номеров RAW.

0 голосов
/ 22 октября 2009

Я бы порекомендовал перейти на более позднюю версию Delphi. Мы сделали это с помощью различных приложений для клиентов. Переход на более новую версию Delphi обычно не вызывает затруднений, но были проблемы с переходом с D5 на D6 из-за изменений в способе обработки компонентов (код времени разработки отделен от времени выполнения), а переход на Unicode в D2009 был более значительным .

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

Какие компоненты вызывают проблемы?

0 голосов
/ 22 октября 2009

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

...