Duas dicas:

1-) Nao e necessario registrar a DLL para que o Java a ache. Mesmo assim, 
para registra-la no Windows, vc precisaria criar aquelas funcoes como 
DllMain da Microsoft, q com certeza nao e o q vc quer.

2-) Segundo o proprio tutorial da Sun, a DLL precisa estar no PATH - veja 
bem, PATH e nao CLASSPATH - do sistema. A mensagem de erro q vc mostrou eh 
diferente da q retorna pra mim qdo a DLL nao esta no PATH, mas tente 
imprimir no Java esta propriedade java.library.path

Resumindo, copie a DLL para o diretorio da aplicacao e chame a classe a 
partir deste diretorio.

Michael Nascimento Santos
Analista/Consultor
CPM Sistemas - www.cpm.com.br


>From: Jorge Martins <[EMAIL PROTECTED]>
>Reply-To: [EMAIL PROTECTED]
>To: java-list <[EMAIL PROTECTED]>
>Subject: [java-list] JNI - dll não registra
>Date: Wed, 7 Feb 2001 16:30:05 -0200
>
>Estava começando a estudar JNI e parei logo no primeiro exemplo. É bem
>simples, um HelloWorld. Compilei-o corretamente, criei o HelloWorld.h com o
>javah, e compilei a dll utilizando o Microsoft Visual C++ 6.0.
>
>cl -Ic:\jdk1.2.2\include -Ic:\jdk1.2.2\include\win32 -MD -LD
>C:\MyHousehold\java\HelloWorld.c -FeHelloWorld.dll
>
>
>Mas ao registrar a biblioteca utilizando o regsvr32, deu a seguinte 
>mensagem
>de erro:
>
>HelloWorld.dll was loaded, but the DllRegisterServer entry point was not
>found.
>
>  <<...OLE_Obj...>>
>
>
>Lembro que meu sistema é um Windows 2000. Já tinha visto que não ia dar em
>nada e rodei a classe só para verificar. E, sem nenhuma surpresa, apareceu 
>o
>seguinte erro:
>
>
>Exception in thread "main" java.lang.UnsatisfiedLinkError: no HelloWorld in
>java.library.path
>         at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1290)
>         at java.lang.Runtime.loadLibrary0(Runtime.java:473)
>         at java.lang.System.loadLibrary(System.java:777)
>         at HelloWorld.<clinit>(HelloWorld.java:7)
>
>
>Alguém tem experiência com JNI ou já enfrentou algo semelhante? Lembro que 
>o
>uso código nativo em meu projeto vem da necessidade de usar Shared Memory.
>Caso alguém saiba como fazer este tipo de comunicação em java puro, por
>favor, envie a solução.
>
>abraços
>
>Jorge Roberto Diniz Martins
>[EMAIL PROTECTED]
>www.unear.net
>Tel.: +55 (21) 3389-2924
>
>
>ps: abaixo vão os códigos
>
>
>  <<HelloWorld.java>>  <<HelloWorld.c>>  <<HelloWorld.h>>
><< HelloWorld.java >>
><< HelloWorld.c >>
><< HelloWorld.h >>
>------------------------------ LISTA SOUJAVA ----------------------------
>http://www.soujava.org.br  -  Sociedade de Usuários Java da Sucesu-SP
>dúvidas mais comuns: http://www.soujava.org.br/faq.htm
>regras da lista: http://www.soujava.org.br/regras.htm
>para sair da lista: envie email para [EMAIL PROTECTED]
>-------------------------------------------------------------------------
_________________________________________________________________________
Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com.


------------------------------ LISTA SOUJAVA ---------------------------- 
http://www.soujava.org.br  -  Sociedade de Usuários Java da Sucesu-SP 
dúvidas mais comuns: http://www.soujava.org.br/faq.htm
regras da lista: http://www.soujava.org.br/regras.htm
para sair da lista: envie email para [EMAIL PROTECTED] 
-------------------------------------------------------------------------

Responder a