USUÁRIO:      SENHA:        SALVAR LOGIN ?    Adicione o VBWEB na sua lista de favoritos   Fale conosco 

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  Impressão com LX300, VB e Windows XP não Funciona
Rosenvald
SANTO ANTÔNIO DO MONTE
MG - BRASIL
Postada em 19/06/2006 18:12 hs         

Olá pessoal, tenho uma dúvida e gostaria que aparecesse um gurú para decifrar e me ajudar a achar a solução. Conto com a boa vontade de vocês, talvez alguém já teve como resolver isso.

Uso o VB para fazer a impressão de boletos bancários, utilizo os comandos PRINTER.PRINT (etc.). A página do boleto tem 10 cm de altura, OK? Para isso uso o comando PRINTER.HEIGHT = 7560. Quando utilizo o programa em uma máquina com windows 98, ele funciona perfeitamente bem. Já instalando em uma máquina com Windows XP A impressão fica correta, porém no programa ao terminar uma página é preciso dar o comando PRINTER.NEWPAGE. Este comando pede uma nova página, OK? O windows XP está entendendo que minha página tem 28 cm ou seja tamanho A4, e não está reconhecendo a página que preciso de 10 cm. Já tentei de tudo, mudei a configuração da página na impressora para ofício e outras opções de tamanho, e fiz vários testes no programa porém tudo em vâo. Sempre a impressora continua com o mesmo tamanho de papel, ou seja A4. Eu acredito que deve haver uma configuração na impressora que resolva o caso, talvez até mesmo instalar o programa da Epsom para windows 98, eu não sei se isso funcionaria... Não sei mais o que fazer Preciso de uma ajuda URGENTE!!! Por favor quem puder me ajudar ficarei muito grato.

 

ROSENVALD COUTO - 19/06/2006


Rosenvald Couto
     
Sandro
não registrado
Postada em 19/06/2006 19:58 hs   
Olá,
 
Realmente o WinXP é uma porcaria em todos os sentidos. Tente o seguinte:
 
1. Não trabalhe com ScaleMode = vbTwips, prefira vbCentimeters ou vbInches (polegadas);
 
2. Ao invés de tentar definir o tamanho do papel usando a propriedade Height, altera a propriedade PaperSize para o tipo de papel que você deseja. Existem propriedades que definem cada tipo de papel para o objeto printer. Procure no help do VB pela propriedade PaperSize para maiores detalhes;
 
3. Se não for utilizar funções gráficas, como Line ou Circle, você pode optar por abrir a porta de impressora como se fosse um arquiov e "gravar" nela o que você quer:
 
Open "Lpt1:" For OutPut As #1
Printer #1, "TESTE"
Close #1
 
Esse exemplo, escreve a palavra TESTE na impressora. Para dar um "Form Feed", você deverá contar as linhas que cabem na página e fazer um loop para imprimir "linhas em branco" de forma a forçar a impressor a saltar a página.
Não é muito bonito nem muito prático, mas dependendo do que você for fazer, pode resolver. Eu usei isso num programa que imprimia cheques.
 
um abraço,
Sandro.
     
Daniel
Pontos: 2843
SÃO PAULO
SP - BRASIL
Postada em 20/06/2006 08:46 hs            
No XP voce precisa criar o formulário específico a utilizar, vá na impressoras, marque a impressora desejada, clique em Arquivo --> Propriedade do servidor, voce tem uma Aba chamada formulário, aonde é possível criar o formulário a ser utilizado, depois defina nas propriedades da impressora esse formulário como o padrão e ele irá funcionar perfeitamente

dsmn
     
Página(s): 1/1    


Seu Nome:

Seu eMail:

ALTERAR PARA MODO HTML
Mensagem:

[:)] = 
[:P] = 
[:(] = 
[;)] = 

HTML DESLIGADO

     
 VOLTAR

  



CyberWEB Network Ltda.    © Copyright 2000-2026   -   Todos os direitos reservados.
Powered by HostingZone - A melhor hospedagem para seu site
Topo da página