| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 13/01/2011 14:41:28
|
ununes
JavaTeenager
Membro desde: 22/07/2005 15:07:04
Mensagens: 170
Offline
|
Bom dia pessoal, tenho a função no final do post em uma dll de bridge pra outra dll em c++ que pega 2 imagens (BYTE *) 1024x1024 RGB e manda pra dll que calcula e retorna um bufferR 1024x1024 RGB com o resultado.
O problema é que a JVM está morrendo sempre que chama o método CalculoFV.
A função calculoFV funciona pois a mesma é chamada de outro programa em C++ e retorna a imagem resultado certinha.
Não sei o que está acontecendo, se tenho que fazer alguma conversão ou algo do tipo para passar os buffers para a função calculoFV (que recebe 2 apontadores "BYTE *" como parâmetro) ou se preciso fazer algo mais que não estou fazendo ou ainda se é algum estouro de memória por causa de alguma situação que eu não tratei.
Se alguém tiver sugestões por favor poste.
Código da função JNI da bridge:
|
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 13/01/2011 18:40:38
|
KWill
Virtual Machine Man
![[Avatar]](/images/avatar/042aec9e604155f2f06c0a16c5f9ba06.jpg)
Membro desde: 18/09/2006 10:05:46
Mensagens: 609
Offline
|
Normalmente, esse tipo de coisa doida também fornece um tipo de "crash dump" do erro que aconteceu na JVM.
Esse "crash dump" pode ser alguma saída no console, um arquivo de log, etc.
Se você puder passar para nós o "crash dump" do erro pode ser que a gente consiga analisar melhor o problema.
Inté.
This message was edited 1 time. Last update was at 13/01/2011 18:40:53
|
"Só estou certo de que não possuo outras certezas" - KWill
"Não penso, mas Googlo, logo existo!" - Geração Copy-Cola |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 14/01/2011 07:59:50
|
juliocbq
GUJ Expert
![[Avatar]](/images/avatar/153704bb24a28e9a6bb49e8ffde1492e.jpg)
Membro desde: 13/11/2008 12:10:18
Mensagens: 3927
Offline
|
Porque você não abre o visual studio e anexa o debugger na dll?
Vai ver que existe um ponteiro nulo nesse código.
|
www.citrox.com.br |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 07/02/2011 10:05:05
|
ununes
JavaTeenager
Membro desde: 22/07/2005 15:07:04
Mensagens: 170
Offline
|
Resolvido, era problemas de diretivas de compilação.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 07/02/2011 10:43:08
|
juliocbq
GUJ Expert
![[Avatar]](/images/avatar/153704bb24a28e9a6bb49e8ffde1492e.jpg)
Membro desde: 13/11/2008 12:10:18
Mensagens: 3927
Offline
|
ununes wrote:Resolvido, era problemas de diretivas de compilação.
Posta a solução para as outras pessoas poderem pesquisar também.
This message was edited 1 time. Last update was at 07/02/2011 10:43:44
|
www.citrox.com.br |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 07/02/2011 10:53:11
|
ununes
JavaTeenager
Membro desde: 22/07/2005 15:07:04
Mensagens: 170
Offline
|
No meu caso, que compilei com o Builder C++ 6.0 bastou mudar os seguintes parâmentros em Project -> Options:
Na aba Linker desmarcar as opções USE DYNAMIC RTL e CREATE DEBUG INFORMATION
Na aba Packages desmarcar as opções BUILD WITH RUNTIME PACKAGES
Na aba Compiler clicar no botão RELEASE
Feito isso passou a funcionar beleza.
This message was edited 1 time. Last update was at 07/02/2011 10:53:28
|
|
|
 |
|
|