[firebase-br] Dll em Delphi para UDF - Problema com valoresinteiros

João Henrique de Souza joao.henrique em jvsind.com.br
Qui Jun 16 07:29:54 -03 2005


Olá...

Eu passei por esse problema, resolvi quando coloquei "var" na declaração da
função.

Ex:
function udf_Conv2Alfa(var Valor: integer; Resultado: PChar): PChar; cdecl;
export;

Repare que no parametro do tipo inteiro eu utilizei o VAR para declara-lo.
Acho que se vc fizer o  mesmo o seu problema será resolvido.

[]´s
João Henrique

----- Original Message ----- 
From: "Euler Jr." <euler em siginformatica.com.br>
To: "Ivan L. Seibel" <ivanseibel em gmail.com>; "FireBase"
<lista em firebase.com.br>
Sent: Wednesday, June 15, 2005 3:18 PM
Subject: Re: [firebase-br] Dll em Delphi para UDF - Problema com
valoresinteiros


> Ja desenvolvi uma. Geralmente procuro utilizar a ling. C/C++ para
interagir
> com o FB/IB, por ter tipos de dados compativeis com o servidor ( FB/IB
foram
> escritos em C/C++). Mas em Delphi vc pode obter o mesmo resultado, basta
> aplicar os tipos corretos. Em C/C++ existem varios modificadores para os
> tipos de dados, por ex. int, short int, unsigned int, double, float, char,
> char*, etc.
> Isso reserva uma qtde de bytes especifica para cada tipo. Geralmente qdo
se
> declara uma api do Win no Delphi, usa-se Cardinal ao inves de Integer,
para
> representar um valor int 32 bits em C sem sinal. Tente trocar por Cardinal
e
> faça um teste.
> O problema tb pode estar relacionado com o processamento dos argumentos
> enviados a funcao, nao ao seu tipo. Proteja o seu bloco de codigo com
> try..except
>
> []s
> Euler Jr.
>
> ----- Original Message -----
> From: "Ivan L. Seibel" <ivanseibel em gmail.com>
> To: "Lista Firebase" <lista em firebase.com.br>
> Sent: Wednesday, June 15, 2005 2:53 PM
> Subject: [firebase-br] Dll em Delphi para UDF - Problema com valores
> inteiros
>
>
> Boa tarde,
>
> Alguém que já tenha desenvolvido DLL em delphi para usar como UDF para
> Firebird/Interbase. Que tipo devo usar para os valores inteiros?
> Experimentei usar integer, mas é gerada uma exceção na hora d usar o
> valor numérico na DLL e o banco cai.
>
> Agradeço antecipadamente,
>
> --
> []'s,
>
> Ivan L. Seibel
> Analista/Desenvolvedor
> Linux User nr #88493
>
> CONECSOFT Consultoria e Informática
> R. Major Gama, 967 - Centro Sul
> CEP: 78020-170 Cuiabá - MT
> WEB Site: www.conecsoft.com.br
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
> Para editar sua configuração na lista, use o endereço
> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
> Para editar sua configuração na lista, use o endereço
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>





Mais detalhes sobre a lista de discussão lista