Amiguinho
O 1º passo é vc entrar em contato com o suporte bematech em relação ao emulador num XP, pois como vc deve saber as versões 2000/XP do Windows trabalham as portas de comunicação diferentes das versões 95/98 onde vc regula os parametros no setup de forma direta.
Quanto ao emulador, vc esta usando a versão DOS ou a versão Windows, pois ainda assim vc deveria fazer uso do Bematech Monitor, não estou certo?
Se seu aplicativo roda sem problemas no Win98, então o problema é encontrar o me'todo de confirguração correta do emulador e o XP.
Voce poderá fazer o teste usando um aplicativo com comandos basicos, exemplo:
// This sample shows how to make a Dynamic Linking at RunTime!
// Using Borland BWCC.DLL DLLs
#include "FiveWin.ch"
#include "dll.ch"
//----------------------------------------------------------------------------//
function Main()
//iRetorno := Bematech_FI_PortaSerial( "COM1" )
iRetorno := IniPortaStr( "COM1" )
for j = 1 to 10
iRetorno := AbreCupom( "00.280.911/0001/10" )
for i = 1 to 10
iRetorno := VendeItem( "0000000000002", ; // codigo
"Bolachas de Maizena",; // descricao
"1800",; // aliquota
"I",; // Inteira ou Fracionaria
"0010",; // quantidade
2,; // casas decimais
"00000220",; // valorvenda
"%",; // Tipo de desconto
"1000" ) // valor do desconto
next
iRetorno := IniciaFechamentoCupom( "D", "%", "1500" )
iRetorno := TerminaFechamentoCupom( "Obrigado!!!" + "Volte sempre!!!" )
next
iRetorno := CancelaCupom()
return nil
//----------------------------------------------------------------------------//
DLL32 FUNCTION AbreCupom( cgc_cpf AS STRING ) AS _INT PASCAL FROM "Bema_FI_AbreCupom" LIB "BEMAFI32.DLL"
DLL32 FUNCTION VendeItem( Codigo AS STRING, ;
Descricao AS STRING, ;
Aliquota AS STRING, ;
TipoQuantidade AS STRING, ;
Quantidade AS STRING, ;
CasasDecimais AS STRING, ;
ValorUnitario AS STRING, ;
Tipodesconto AS STRING, ;
Desconto AS STRING) AS _INT PASCAL FROM "Bema_FI_VendeItem" LIB "BEMAFI32.DLL"
DLL32 FUNCTION IniciaFechamentoCupom( AcrescimoDesconto AS STRING, ;
TipoDesconto AS STRING, ;
ValorDesconto AS STRING ) AS _INT PASCAL FROM "Bema_FI_IniciaFechamentoCu" LIB "BEMAFI32.DLL"
DLL32 FUNCTION TerminaFechamentoCupom() AS _INT PASCAL FROM "Bema_FI_TerminaFechamentoCupom" LIB "BEMAFI32.DLL"
DLL32 FUNCTION CancelaCupom() AS _INT PASCAL FROM "Bema_FI_CancelaCupom" LIB "BEMAFI32.DLL"
DLL32 FUNCTION IniPortaStr(FD AS STRING) AS _INT PASCAL FROM "Bema_FI_IniPortaStr" LIB "BEMAFI32.DLL"
//----------------------------------------------------------------------------//
procedure AppSys // XBase++ requirement
return
Se necessitar de um codigo para fazer os teste use o deste
link
@braços :?)