Problemas de comunicação com o emulador ecf bematech

Olá pessoal … preciso de ajuda de alguem por favor …!!!
Estou tentando rodar um exemplo bem tradicional no netbeans para comunicar com o emulador ecf bematech … já quebrei a cabeça pra descubrir o q estou fazendo de errado e nada … uffff …
Já coloquei todas as .dlls no diretorio C:\Windows\System32 :
-> BemaFI32.dll
-> BemaFI32.ini
-> BemaMFD.dll
-> BemaMFD2.dll
-> DAO2535.tlb
-> DAO350.dll
-> MSJET32.dll
-> AX6R32.DLL

coloquei a variavel EmulMFD=1 no arquivo .ini
baixei o emularo de portas VSPE
e estou tentando rodar o seguinte exemplo :

import bemajava.*;
public class teste {

public static void main(String[] args) {
int iRetorno;

iRetorno = Bematech.LeituraX();

System.out.println("Retorno = " + iRetorno);

}

}

e o iRetorno esta me trazendo 0 …
por favor … se alguem já conseguiu resolucionar esse comunicação me dê uma luz por favor !!!
Desde já abraços !!!

Primeiramente, coloque o seu código entre as tags code.

Qual SO você usa? Se for Win7 64 bits tem que botar os arquivos dentro da pasta C:\Windows\SysWOW64. Só que acho que não é muito interessante porque, segundo o suporte da Bematech, não tem nada homologado em cima do 64 bits.

Pode ser algum anti-vírus que bloqueia o acesso à DLL também, segundo o suporte da Bematech.

Este é o codigo :

package testeecf;

/**
 *
 * @author Danilo
 */
import bemajava.*;
public class teste {

  public static void main(String[] args) {
    int iRetorno;


    
    iRetorno = Bematech.LeituraX();

    System.out.println("Retorno = " + iRetorno);
  }

}

André … muito obrigado por ter respondido !!!
Olha só … eu uso o Vista no meu laptop … eu até pensei q estava com o Firewall desativado … veriquei estava ativo, desativei só q o retorno da minha variavel ainda esta me retornando 0. Será q por ser Vista o SO há alguma configuração q tem q ser feito para q a comunicação com emulador seja efetivada ?

Acho que não. Eu usava com Windows 7 64 bits e sempre bugava… Quando eu ia falar com o suporte da Bematech eles sempre falavam que era melhor colocar num 32 bits porque no 64 não foi homologado.

Como está a primeira seção do seu Bemafi.ini? Seu SO é 32 ou 64 bits?

Aliás, será que não faltou você carregar a DLL? Tenta colocar um System.loadLibrary com a DLL.

A primeira seção do BemaFi32.ini esta assim :

[Sistema]
Porta=Default
Path=C:\
Status=0
Retorno=0
StatusFuncao=0
ControlePorta=1
ModeloImp=BEMATECH
ConfigRede=0
ModoGaveta=0
Log=1
LogDiario=1
CrLfVinculado=0
CrLfGerencial=0
TimeOutGerencial=40
EmulMFD=1
StatusCheque=
CalculoIcmsCupom=0
ForceWTSClient=1
RetriesWTSCmd=3

o meu SO é 32(Vista).

André v só, na classe implementei assim :

import bemajava.*;
public class teste {
static{
		    System.loadLibrary ("BemaFI32.dll");
		   
	   }
  public static void main(String[] args) {
    int iRetorno;

    iRetorno = Bematech.LeituraX();
    System.out.println("Retorno = " + iRetorno);
  }
}

e já me apresentou a seguinte mensagem de erro :

java.lang.UnsatisfiedLinkError: no BemaFI32.dll in java.library.path
        at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1682)
        at java.lang.Runtime.loadLibrary0(Runtime.java:823)
        at java.lang.System.loadLibrary(System.java:1030)
        at testeecf.teste.<clinit>(teste.java:15)
Exception in thread "main" 
Exception in thread "main" Java Result: 1

será q tem a ver com a confirguração das variaveis de ambiente ? desulpa a ignorancia mas … se for … como faço para configurar essas variaveis de ambiente ?

olá pessoal !!!
após tanto quebrar a cabeça pra resolver isso … mudei de emulador de porta serial, estou usando o Virtual Serial Port Driver … e rodei o minha classe agora deu o seguinte erro :

Exception in thread "main" java.lang.UnsatisfiedLinkError: C:\Windows\System32\BemaFI32.dll: Acesso inválido ao local de memória
        at java.lang.ClassLoader$NativeLibrary.load(Native Method)
        at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1751)
        at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1676)
        at java.lang.Runtime.loadLibrary0(Runtime.java:823)
        at java.lang.System.loadLibrary(System.java:1030)
        at bemajava.Bematech.<clinit>(Bematech.java:338)
        at testeecf.teste.main(teste.java:26)
Java Result: 1

Alguém já passou pela mesma experiencia ?
Por favor se alguém já viu isso me dê um help, please !!!

Tente tirar o “.dll”

sem querer ser chato…aqui é uma area sobre arquitetura.