Jump to content
Fórum Script Brasil
  • 0

(Resolvido) Ajuda para Carregar uma Dll


Question

Aí pessoal? beleza?

To precisando de uma ajuda

eu criei uma dll pro meu programa e quando ela (dll) tava na pasta do EXE, o programa rodava normalmente

só que resolvi criar uma pasta separada para as dll's

e aí que tah o problema: não consigo carregá-las

se precisar eu mando o source da dll, ela é simples, mas ajuda....

Alguma ajuda, idéia??

Vlw!!

Link to post
Share on other sites

6 answers to this question

Recommended Posts

  • 0
eu criei uma dll pro meu programa e quando ela (dll) tava na pasta do EXE, o programa rodava normalmente

só que resolvi criar uma pasta separada para as dll's

e aí que tah o problema: não consigo carregá-las

Dlls podem ser carregadas de duas maneiras: estaticamente ou dinamicamente

O modo estático sempre se refere ao mesmo endereço de entrada na mesa DLL, e o windows, ao carregar o aplicativo para a memória, carrega tambem a dll. Caso a dll não possa ser encontrada o windows não deixa o aplicativo ser executado poruqe falta um componente essencial para a execção do mesmo.

ex:

function soma (A, B: Extended ) : Extended; external 'teste.dll';

se estiver em outra pasta

function soma (A, B: Extended ) : Extended; external 'c:\Dlls\teste.dll';

Outro modo possivel de impotação de DLLs é o dinâmico. Neste caso, o nome da dll e o nome e índice da função a ser usada são passadas apenas em tempo de execução

ex:

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

se estiver em outra pasta

Handle := LoadLibrary('c:\Temp\'DateTime.dll');

abraço

Link to post
Share on other sites
  • 0
eu posso usar a função ExtractFilePath(application.ExeName), para pegar a pasta do aplicativo e então pegar Bin onde estão as dll's??

se as suas dlls estiverem na mesma pasta onde está o seu aplicativo não tera que fazer nada

entretanto se estiverem em outra pasta tera que informar o caminho para elas, como no exemplo que te passei, ou voce pode copia-las para dentro da pasta system do windows

abraço

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      148691
    • Total Posts
      644530
×
×
  • Create New...