Clipper On Line • Ver Tópico - Retorno de LoadLibrary

Retorno de LoadLibrary

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

Moderador: Moderadores

 

Retorno de LoadLibrary

Mensagempor alaminojunior » 06 Jul 2017 11:51

Bom dia caros !

Já há muito tempo utilizo a função LoadLibrary para instanciar as DLL´s dos fabricantes de ECF.
Até um certo release do xHarbour (não sei ao certo qual) o retorno desta função era um número com o handle.
Então como cita o manual, eu sempre tratei em cima desse retorno. Se retornasse 0, DLL não encontrada, se retornasse um número negativo, DLL não foi carregada por algum motivo, e retornando um número maior que zero, sucesso !
h1:= LoadLibrary("InterfaceEpson.dll")

Ontem fiz atualização do xHarbour pelo SVN, baixei o BCC 7.30 taquei o pau. Recompilei tudo e agora estou testando ...

Ocorre que nesta versão, o retorno é um ponteiro !!! e com isso meus tratamentos foram todos para o brejo !
Verifiquei o fonte dllcall.c e realmente constam alterações nesse sentido.

Alguém já passou por esse caminho ?
Compilador xHarbour 1.2.3 + Embarcadero C++ 7.30
MySQL c/ SQLRDD
HwGui + GTWVG
Avatar de usuário

alaminojunior
Colaborador

Colaborador
 
Mensagens: 1689
Data de registro: 16 Dez 2005 20:26
Cidade/Estado: Ubatuba - SP
Curtiu: 27 vezes
Mens.Curtidas: 11 vezes

Retorno de LoadLibrary

Mensagempor marcosgambeta » 06 Jul 2017 12:24

alaminojunior escreveu:Ocorre que nesta versão, o retorno é um ponteiro !!![/b] e com isso meus tratamentos foram todos para o brejo !


Retornar um ponteiro no lugar de um número é uma opção melhor. Você pode testar usando a função empty:

IF !Empty(pHandle)
   // OK
ELSE
  // erro
ENDIF
Atenciosamente,
Marcos Antonio Gambeta
marcosgambeta
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 318
Data de registro: 16 Jun 2005 22:53
Curtiu: 2 vezes
Mens.Curtidas: 40 vezes

Retorno de LoadLibrary

Mensagempor Mario Mesquita » 06 Fev 2019 20:16

Boa noite, amigos.

Pergunta: qual o equivalente no Harbour dessa função LoadLibrary() ?

Ela é do xHarbour, não é? Deve ter uma função que faz a mesma coisa, carregar uma DLL.

Quem souber, agradeço a dica.

Saudações,
Mario.
Avatar de usuário

Mario Mesquita
Usuário Nível 4

Usuário Nível 4
 
Mensagens: 557
Data de registro: 08 Dez 2009 12:47
Cidade/Estado: Rio de Janeiro
Curtiu: 73 vezes
Mens.Curtidas: 13 vezes

Retorno de LoadLibrary

Mensagempor MSDN » 06 Fev 2019 21:12

Usando o HBMK2 vc consegue achar o que precisar dentro do Harbour :

Exemplo

C:\>hbmk2 -find loadlibrary
Harbour core (installed):
wapi_LoadLibrary()
hbwin.hbc (installed):
wapi_LoadLibrary()

C:\>

Abraços
MSDN
Usuário Nível 4

Usuário Nível 4
 
Mensagens: 741
Data de registro: 28 Nov 2003 14:55
Cidade/Estado: CWB
Curtiu: 178 vezes
Mens.Curtidas: 123 vezes

Retorno de LoadLibrary

Mensagempor Mario Mesquita » 07 Fev 2019 11:03

Bom dia a todos.

Obrigado, Marcelo. Confesso que não tenho muita prática com essa parte do compilador. Essa possibilidade de ativar uma DLL externa é interessante e pode ser muito útil.

Saudações,
Mario.
Avatar de usuário

Mario Mesquita
Usuário Nível 4

Usuário Nível 4
 
Mensagens: 557
Data de registro: 08 Dez 2009 12:47
Cidade/Estado: Rio de Janeiro
Curtiu: 73 vezes
Mens.Curtidas: 13 vezes




Retornar para Harbour

Quem está online

Usuários vendo este fórum: Nenhum usuário registrado online e 6 visitantes


Ola Amigo, espero que meu site e forum tem lhe beneficiado, com exemplos e dicas de programacao.
Entao divulgue o link da Doacao abaixo para seus amigos e redes sociais ou faça uma doacao para o site forum...
MUITO OBRIGADO PELA SUA DOACAO!
Faça uma doação para o forum
cron
v
Olá visitante, seja bem-vindo ao Fórum Clipper On Line!
Efetue o seu login ou faça o seu Registro