Pergunta

Um site bastante abrangente explicando as dificuldades e soluções envolvidas no uso de uma dll escrito em C / C ++ e a conversão do arquivo de cabeçalho .h para delphi / pascal foi enviada para uma lista de discussão que eu estava em recentemente, então eu pensei que 'd compartilhá-lo, e convidar outras pessoas para postar outros recursos úteis para isso, sejam eles links, ferramentas de conversão, ou livro / títulos de papel.

Um recurso por resposta, por favor, por isso vamos acabar com os mais populares / melhores recursos borbulhando ao topo.

Foi útil?

Solução

Ao longo em de Rudy Delphi Canto , ele tem um excelente artigo sobre as armadilhas de conversão de C / C ++ para Delphi . Na minha opinião, esta é uma informação essencial ao tentar esta tarefa. Aqui está a descrição:

Este artigo é destinado a todos os que necessidades para traduzir cabeçalhos C / C ++ para Delphi. Eu quero compartilhar algumas das armadilhas que você pode encontrar quando conversão de C ou C ++. Este artigo não é um tutorial, apenas uma discussão de problema frequentemente encontrado casos. Ele foi criado para o novato, bem como para os mais experientes tradutor de C e C ++.

Ele também escreveu um " Conversão Helper Package " que instala no IDE Delphi que ajuda na conversão de código C / C ++ para Delphi:

text alt
(fonte: rvelthuis.de )

Seus outros artigos relevantes sobre este tema incluem:

Outras dicas

artigo em Delphi canto de Rudy

Além disso, CodeGear hospeda uma ferramenta de tradução rudimentar chamado CToPas (escrito por Ural Gunaydin).

Gostaria de destacar o Biblioteca de APIs Jedi, é a tradução Delphi dos cabeçalhos do SDK do Windows.Pode poupar muito trabalho se você precisar traduzir cabeçalhos do SDK e é, claro, um bom exemplo de conversões!

Como o FreePascal visa a compatibilidade do Delphi, entre outras coisas, acho que o H2Pas também pode ser útil.

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

HeadConv do DrBob também é muito usado, embora eu concorde com Graza que a tradução manual é melhor.

use esta opção para que o alinhamento de bytes seja igual ao C/C++ e então você não precise adicionar bytes de preenchimento nas estruturas.

{$MINENUMSIZE 4}

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top