Delphi 5は、VSが使用できる.PDBファイルを生成できますか?
-
05-07-2019 - |
質問
Delphi 5で記述されたこの大規模なアプリケーションがあり、現在も開発が進行中です。新しいバージョンへの移行に関する調査が行われていますが、これまでのところ、一部のサードパーティコンポーネントは古く更新されておらず、後のバージョンでは動作しないため、成功していません。
それまでの間、人々は作業を続ける必要があります。現在、Delphi 5 IDEは本当の楽しみではありません。かなりバグが多く、現代のIDEの多くの機能がないため、使用が困難です。特にデバッグに関しては。
だから私は疑問に思っていました-プロセスでVisual Studioを使用することは可能でしょうか?私が知る限り、.PDBファイル形式はかなり古く、十分に文書化されています。コンパイルされた結果の.PDBファイルを何らかの方法でDelphiコンパイラに生成させることは可能ですか?その後、おそらく元のIDEよりもはるかに大きな範囲で、プログラムをVisual Studioでデバッグできます。
まあ、絶対的な聖杯は、すべての開発をVSに移行し、Delphiからコンパイラを保持することですが、それはかなり不可能だと思います。
解決
いいえ。他のバージョンのDelphiもできません。 Map2Dgb を使用して、詳細なマップファイルをdbgファイルに変換します。これをWinDbgで使用できます。
Delphi 5にはない、またDelphi言語を理解しているIDEに依存しないVisual Studioでの使用を期待しているデバッグ機能に興味があります。私はいつもDelphi 5にかなり満足していました。
他のヒント
ところで、この機能に投票できますこちら。
VS互換のデバッグ情報は、アプリケーションのデバッグに役立つだけでなく(Delphiを使用した方がよい)、Process Explorerなどのツールを使用するのにも役立つことに注意してください。たとえば、Process Explorerは、RAW番号ではなく、人間が読み取れるコールスタックを表示できる場合があります。
tds2pdb を試してみましたが、うまく機能しています。
どうやらできません。 PDBは結局、ドキュメントのないMicrosoftの形式であり、それを生成する他のツールはないようです。残念。 :(
Delphiの新しいバージョンに移行することをお勧めします。クライアント向けのさまざまなアプリケーションでこれを行ってきました。通常、Delphiの新しいバージョンへの移行は簡単ですが、コンポーネントの処理方法の変更(設計時コードとランタイムの分離)によりD5からD6に移行する問題があり、D2009のUnicodeへの変更はより大きな変更でした。
主なことは、サードパーティのコンポーネントを整理することです。ソースに付属しているサードパーティのコンポーネントのみを使用するため、最悪の事態が発生してベンダーが消滅した場合でも、コンポーネントで作業を続けることができます。
どのコンポーネントが問題の原因ですか?