Ir para conteúdo
Fórum Script Brasil
  • 0

Utilizar Dll C# No Delphi 5


Bruno Nunes

Pergunta

Cumprimentos,

Migrei já há algum tempo para o c#, mas ainda tenho alguns programas escritos em delphi 5 que ainda estão em operação.

Surgiu-me agora a necessidade de acrescentar algumas funcionalidades a um desses programas escritos em delphi 5, funcionalidades essas que já estão implementadas em c#. No entanto, devo admitir que já não me lembro como raio eu utilizava dlls que não conseguia importar.

Lembro-me que instanciava objectos, mas pouco mais. Já tentei fazer o dynamic loading da dll, mas não consigo extrair as funções.

Como exemplo, vamos imaginar que tenho duas classes na dll (teste.dll):

public static class DataModel - que contém um conjunto de funções de dados, por exemplo

{

public static bool ligar();

public static bool desligar();

public static void buildReport();

}

public class External - que contém as funções que pretendia chamar externamente, por exemplo

{

public void testeCall()

{

DataModel.ligar();

DataModel.buildReport();

DataModel.desligar();

}

}

O que tentei fazer no delphi, mas sem sucesso, foi o seguinte:

TTesteCall = procedure();

THandle = Integer;

var Handle: THandle;

TesteCall: TTesteCall;

teste: TObject;

begin

Handle := LoadLibrary('teste.dll');

if Handle <> 0 then

begin

@TesteCall := GetProcAddress(Handle, 'testeCall');

if @TesteCall <> nil then

begin

(...)

end;

FreeLibrary(Handle);

end;

end;

Consigo fazer o load da dll sem problemas, mas não consigo ir buscar a função qie pretendo... Alguém me poderá dar alguma dica, ou orientar-me para alguma documentação que me ajude a refrescar a memória? Lembro-me que não era desta forma que o fazia, mas pouco mais...;)

Obrigado,

Bruno Nunes

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...