Best resources for converting C/C++ dll headers to

2019-01-21 20:29发布

A rather comprehensive site explaining the difficulties and solutions involved in using a dll written in c/c++ and the conversion of the .h header file to delphi/pascal was posted to a mailing list I was on recently, so I thought I'd share it, and invite others to post other useful resources for this, whether they be links, conversion tools, or book/paper titles.

One resource per answer please, so we'll end up with the most popular/best resources bubbling to the top.

7条回答
可以哭但决不认输i
2楼-- · 2019-01-21 21:04

I would like to highlight the Jedi Api Library, it is the Delphi translation of the Windows SDK headers. Might save you a lot of work if you need to translate headers from the SDK and is of course a good sample of conversions!

查看更多
放我归山
3楼-- · 2019-01-21 21:08

Since FreePascal is aimed at Delphi compatibiltiy among other things, i think H2Pas may be helpful too.

https://www.freepascal.org/tools/h2pas.var

查看更多
成全新的幸福
4楼-- · 2019-01-21 21:13

HeadConv from DrBob is used quite a lot too, although I concur with Graza that manual translation is best.

查看更多
Deceive 欺骗
5楼-- · 2019-01-21 21:15

Also, CodeGear hosts a rudimentary translation tool called CToPas (written by Ural Gunaydin).

查看更多
何必那么认真
6楼-- · 2019-01-21 21:20

Over at Rudy's Delphi Corner, he has an excellent article about the pitfalls of converting C/C++ to Delphi. In my opinion, this is essential information when attempting this task. Here is the description:

This article is meant for everyone who needs to translate C/C++ headers to Delphi. I want to share some of the pitfalls you can encounter when converting from C or C++. This article is not a tutorial, just a discussion of frequently encountered problem cases. It is meant for the beginner as well as for the more experienced translator of C and C++.

He also wrote a "Conversion Helper Package" that installs into the Delphi IDE which aids in converting C/C++ code to Delphi:

alt text http://rvelthuis.de/images/convertpackshaded.png

His other relevant articles on this topic include:

查看更多
乱世女痞
7楼-- · 2019-01-21 21:23

use this option so the byte alignment is the same as C/C++ and then you don't need to add padding bytes in structs.

{$MINENUMSIZE 4}

查看更多
登录 后发表回答