Ir para conteúdo
Faça parte da equipe! (2024) ×
Conheça nossa Beta Zone! Novas áreas a caminho! ×
  • Quem está por aqui   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.

Redeclarando API's do Jeito Certo


Ryokusei
 Compartilhar

Posts Recomendados

Algumas API's declaradas no Delphi exigem variáveis como argumento, um exemplo é a CreateThread.

Veja a declaração:

 

É necessário se cadastrar para acessar o conteúdo.

 

Agora vamos ver o que a Microsoft tem a dizer sobre isso:

 

É necessário se cadastrar para acessar o conteúdo.

 

Segundo a Microsoft o último argumento da função é um ponteiro pra uma variável DWORD (região de memória alocada com pelo menos 4 bytes disponíveis para escrita). O Delphi pede uma variável DWORD e ele mesmo passa o ponteiro dela como argumento.

Não sei porque ele faz isso, provavelmente pra facilitar a vida de usuários que não sabem o que é um ponteiro.

 

Pra contornar isso é bem simples, basta redeclarar essa API, e felizmente o Delphi tem a diretiva overload que permite que duas funções tenham o mesmo nome (só pela estética, na verdade podemos usar qualquer outro nome para a função).

 

Declare:

 

É necessário se cadastrar para acessar o conteúdo.

 

Pronto, problema resolvido. Agora você pode chamar a função do jeito certo.

 

FAQ

 

Q: Pra que eu vou usar isso?

A: Pra utilizar API's do jeito certo e não do jeito preguiçoso.

 

Q: Posso fazer isso pra todas as API's que eu quiser?

A: Sim.

Link para o comentário
Compartilhar em outros sites

Este tópico está impedido de receber novos posts.
 Compartilhar

×
×
  • Criar Novo...

Informação Importante

Nós fazemos uso de cookies no seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies , caso contrário, vamos supor que você está bem para continuar.