problema para conectar impressora bematech pelo delphi 2010

Delphi

26/10/2012

Amigos se possível gostaria da ajuda de vocês pra solucionar um problema que venho enfrentando. Adquiri a pouco tempo uma impressora não fiscal da bematech, a MP4200, na expectativa de poder integrá-la com meus programas comerciais. Baixei e instalei todos os drivers necessários para comunicação da impressora. Instalei o software de usuário e pelo mesmo
pude configurar a impressora e testar algumas de suas funções. A impressora esta funcionando perfeitamento bem. Meu único problema está quando tento conectá-la pelo delphi. Fiz todas as declarações necessárias e coloquei as dlls no diretório, o programa compila sem erros. Mas o comando IniciaPorta( pchar( 'USB' ) ); jamais retorna 1, sempre dá erro de conexão. Já tentei até com a porta 'COM5' que é a serial virtual utilizada. Baixei um exemplo em delphi 7 no site da bematech e quando executei o programa consegui conectar com a impressora. Quando abro o mesmo programa com o meu delphi 2010 ele não consegue mais conectar com a impressora, sempre acusa erro de conexão. Dai o program que antes conectava passa a não conseguir conectar mais, como se ao abrí-lo pelo delphi fosse modificado alguma coisa no programa. Já tentei de tudo mas
não consigo resolver meu problema... Alguem sabe o que há de errado?!
Felipe Silva

Felipe Silva

Curtidas 0

Respostas

Gilvanio Gonçalves

Gilvanio Gonçalves

26/10/2012

veja bém, a impressora bematech 4200, é porta usb, e não porta serialc om 1, ou com2.
no neu aplicativo eu apenas instalei o driver da impressora e funciona tudo normal, não utilizei dlls.
do site da bematech. usei o driver mesmo com instalador.

não sei como vc esta mandando imprimir no seu apliactivo, impressão direta, ou por um formulario tipo i quickreport
no meu caso envio pelo quickreport como cupon não fiscal e a bematech faz tudo imprimi e faz o corte automatico.

este é meu caso, agora não sei como vc esta dando o comando no seu aplicativo para imprimir?

dê mais detalhes para que possamos te ajudar.
GOSTEI 0
Felipe Silva

Felipe Silva

26/10/2012

ok Gilvano como impressora a mp4200th ta funcionando perfeitamente bem. Consigo imprimir qualquer arquivo do meu pc.
Mas o problema é que desejo que ela imprima cupons tipo fiscais. Estou usando a dll para comunicar com a impressora, utilizo as funções bematechtx ou formattx por exemplo para imprimir textos. Com o delphi 7 consegui fazer realizar a conexão com a impressora porém com o delphi 2010 sempre dá erro. Você pode tentar baixar um programa exemplo no site da bematech e tentar conectar com a impressora. Se você conseguir me avise pois eu até agora nao consegui com o delphi 2010 apenas com o delphi 7.
GOSTEI 0
Bruno Leandro

Bruno Leandro

26/10/2012

Ola felipe por funcionar corretamento no delphi 7 e no delphi 2010 ocorrer problema no mesmo processo me parece ser devido ao unicode, verifique os parametros da função que voce esta chamando quais são os tipos, ex: string, widestring, char, integer. pois me parece ser isso
GOSTEI 0
Italo Pereira

Italo Pereira

26/10/2012

oi,

estava com o mesmo problema e resolvi lendo o seguinte artigo:

http://partners.bematech.com.br/2011/12/edicao-100-migrando-variaveis-da-bemafi3264-dll-para-delphi-2010/

resumindo:

na unit que contem as funcoes da DLL, voce deve trocar a palavra string por ansistring

testa aí.

abraço.
GOSTEI 0
Almir

Almir

26/10/2012

Italo, putz velho! solucionou meu problema! KKKKKKK
Estava procurando uma solução na NET para esse problema exato da Bematech 4200 th, só que no Delphi 2009, encontrei esse post e fiz a modificação para ansistring e foi!

Não podia deixar de agradecer - 1 semana procurando uma solução para esse problema!
Valew
GOSTEI 0
POSTAR