Jean Que estranho. E se vc usar um VARCHAR2 (considerando uma conversão implícita) e depois tratar o valor que for recebido?
Se vc souber o valor que o BYTE (na DLL) retorna, poderá comparar com o que o parâmetro VARCHAR2 receber... e poderá deduzir um processo de tratamento/conversão... (é uma chance) [ ] André Em 24/04/08, Jean Carlos Reddiga <[EMAIL PROTECTED]> escreveu: > > utilizando o psl_integer ou bynari_integer não retorna erro, mas tbm não > > retorna o valor correto, pois como o retorno é um byte de 0 a 225, > quando joga por integer ele transforma em um numero de 6 caracteres. > > Andre Santos escreveu: > > > > Jean > > > > Que erro ocorre? (mensagem, etc.) > > > > [ ] > > > > André > > > > Em 24/04/08, Jean Carlos Reddiga <[EMAIL > > PROTECTED]<jean.reddiga%40gmail.com> > > <mailto:jean.reddiga%40gmail.com <jean.reddiga%2540gmail.com>>> > escreveu: > > > > > > infelizmente não funcionou. > > > > > > testei tbm retorno como blob, clob, raw. > > > > > > não tenho mais ideia do que fazer. Unica certeza que tenho é que o > > > retorno da dll é um Byte. > > > > > > Andre Santos escreveu: > > > > > > > > Jean > > > > > > > > Faça **testes** com PLS_INTEGER. > > > > Mas não é totalmente equivalente a um tipo "byte" (de 0 a 255 em > > decimal, > > > > certo?). > > > > PLS_INTEGER tem 4 bytes. > > > > > > > > [ ] > > > > > > > > André > > > > > > > > Em 22/04/08, Jean Carlos Reddiga <[EMAIL > > > > PROTECTED]<jean.reddiga%40gmail.com> > > <mailto:jean.reddiga%40gmail.com <jean.reddiga%2540gmail.com> > ><jean.reddiga%40gmail.com> > > > > <mailto:jean.reddiga%40gmail.com > > > > <jean.reddiga%2540gmail.com><jean.reddiga% > 2540gmail.com>>> > > > escreveu: > > > > > > > > > > Olá pessoal. > > > > > > > > > > Estou com uma duvida, estou usando uma dll que retorna conteúdo > > BYTE. > > > > > Com qual tipo de dados no Oracle devo declarar o Retorno??? > > > > > > > > > > Segue o exemplo abaixo > > > > > Desde já agradeço. > > > > > ***************** > > > > > Jean Carlos Reddiga. > > > > > ---------------------------------------------------- > > > > > > > > > > PACKAGE B0001 IS > > > > > FUNCTION PING(INNER NUMBER) RETURN BINARY_INTEGER; > > > > > END; > > > > > > > > > > PACKAGE BODY B0001 IS > > > > > FDLL Ora_Ffi.Libhandletype; > > > > > DLL_FUNCAO Ora_Ffi.Funchandletype; > > > > > -- ******************* FUNÇÕES > > > > > FUNCTION CHAMAFUNCAO1(fhandle Ora_Ffi.Funchandletype,A NUMBER) > > RETURN > > > > > BINARY_INTEGER; > > > > > PRAGMA interface(C, CHAMAFUNCAO1, 11265); > > > > > --- Função para inicializar comunicação com inner especifico > > > > > -- Inner - Numero do inner desejado - 1 a 32 > > > > > FUNCTION PING(INNER NUMBER) RETURN BINARY_INTEGER IS > > > > > BEGIN > > > > > FDLL := Ora_Ffi.Load_Library > > ('c:\WINDOWS\SYSTEM32\','EasyInner.dll'); > > > > > DLL_FUNCAO := Ora_Ffi.Register_Function > > > > > (FDLL, 'Ping',ORA_Ffi.C_Std); > > > > > Ora_Ffi.Register_Parameter (DLL_FUNCAO, ora_ffi.C_INT); > > > > > Ora_Ffi.Register_Return (DLL_FUNCAO,Ora_Ffi.C_INT); > > > > > RETURN(CHAMAFUNCAO1(DLL_FUNCAO,INNER)); > > > > > END PING; > > > > > END; > > > > > > > > > > > > > > > > > > [As partes desta mensagem que não continham texto foram removidas] > > > > > > > > > > > > > > > > > > > > > [As partes desta mensagem que não continham texto foram removidas] > > > > > > > [As partes desta mensagem que não continham texto foram removidas]