Metodo da dll nao encontrado

Projeto [x]Harbour - Compilador de código aberto compatível com o Clipper.

Moderador: Moderadores

cezarvm
Usuário Nível 1
Usuário Nível 1
Mensagens: 21
Registrado em: 07 Mai 2008 09:39

Metodo da dll nao encontrado

Mensagem por cezarvm »

Boa tarde, estou tentando usar o procedimento "daruma_fimfd_geraratocotepepafcoo" e na execução da função mostra a seguinte mensagem:

DllPrepareCall:GetProcAddress() failed!

Nao foi possivel encontrar o procedimento especificado.

mostra essa mensagem em uma caixa igual as mensagens do windows.(no caso não consegui colar aqui)


- ja baixei a dll da daruma
- usei o programa para passar ela para lib (implib).

o que falta fazer?

Desde ja Agradeço.
Cezar Machado.
DLZ
Usuário Nível 3
Usuário Nível 3
Mensagens: 184
Registrado em: 09 Jun 2008 10:09
Localização: Ibirubá - RS - Brasil

Re: Metodo da dll nao encontrado

Mensagem por DLZ »

Cara..
Qdo se trata de chamar uma função de uma DLL tem que respeitar maisucula e minúscula..
Segundo o manual da Daruma.dll, o nome da função é Daruma_FIMFD_GerarAtoCotepePafCoo
Tente chamar assim, acredito que seja isso..
Avatar do usuário
rochinha
Administrador
Administrador
Mensagens: 4664
Registrado em: 18 Ago 2003 20:43
Localização: São Paulo - Brasil
Contato:

Re: Metodo da dll nao encontrado

Mensagem por rochinha »

Amiguinho,

Geralmente quando usamos .DLLs en nossas aplicações costumamos usar alguns métodos, acesso ou linkagem e acesso:

Quando a .DLL permite gerar uma .LIB poderemos usar o método de linkagem e acessar suas funcções diretamente.

Quando não é possivel gerar a .LIB mas é possivel acessar a .DLL, ainda assim podemos carregá-la na memória e a partir de comandos extendidos fazer uso de suas funções.

A função LoadLibrary() do Borland C permite carregar as mesmas e ai então fazer uso de comandos extendido e criar as pseudo-funções para acesso as funções reais da .DLL.

Código: Selecionar todos

#include "fivewin.ch"
#include "dll.ch"

#define ACBrDLL "NFWHECF.DLL"

function main()

   public hDLL := LoadLibrary( ACBrDLL )
...
Para o acesso faço uso:

Código: Selecionar todos

DLL32 FUNCTION DefineModelo( cModeloStr AS STRING, cPorta AS STRING, nTimeout AS _INT ) AS BOOL PASCAL FROM "DefineModelo" LIB ACBrDLL
Como dito anteriormente FuncaoComNomeX é direfente de FUNCAOCOMNOMEX portanto respeite estas regras e menos erros acontecem.
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para [url=mailto://fivolution@hotmail.com]fivolution@hotmail.com[/url]. Agradecido.

@braços : ? )

A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
cezarvm
Usuário Nível 1
Usuário Nível 1
Mensagens: 21
Registrado em: 07 Mai 2008 09:39

Re: Metodo da dll nao encontrado

Mensagem por cezarvm »

Gente depois de tantos anos enrrolando os chefes, cai nesse erro bobo de caixa das letras, mas a maioria das vezes as soluções nem sempre são as complicadas..."Coo e COO"... Valeu...


Agradeço a atenção de todos.
Cezar Machado.
Responder