Clipper On Line • Ver Tópico - Utilização do Dosprinter internamente no código do programa

Utilização do Dosprinter internamente no código do programa

Projeto Harbour - Compilador de código aberto compatível com o Clipper.

Moderador: Moderadores

 

Utilização do Dosprinter internamente no código do programa

Mensagempor marcelomteles » 27 Jul 2015 11:08

Pessoal bom dia,

Tenho que resolver um pequeno problema em meu sistema e preciso a princípio imprimir uma imagem de fundo no relatório. Sei que podem existir opções melhores e mais fáceis, agradeço se me indicarem quais são, mas aproveitando alguns tópicos aqui do Fórum sobre a utilização do Dosprinter, experimentei este programa e inicialmente, para resolver rapidamente meu problema e posterior partir para uma solução talvez melhor e mais elaborada, esta me atendendo.

O problema é que quando utilizo o dosprinter via prompt, ele funciona muito bem, mas quando utilizo via código do meu prg, ou trava ou não acontece nada. Abaixo a linha de código que estou utilizando dentro do meu prg:

!dosprinter "ARQ.PRN" /IMAGE'FIGURA.JPG,240,180,165'

Estou utilizando o Dosprinter 3.6, Harbour 3.2.

Estou enviando o arquivo prg (desenvolvido no gaspro) para que me orientem em que ponto devo inserir a chamada do Dosprinter, pois já o coloquei em vários pontos e o programa não é chamado.

Por favor comentem e me ajudem sobre a utilização do Dosprinter, mas também gostaria de receber outros sugestões para posterior modificação da solução.

Obrigado.

Marcelo
Anexos
SPS_R033.PRG
(5.64 KiB) Baixado 87 vezes
Marcelo
Harbour 3.2.0
marcelomteles
Usuário Nível 1

Usuário Nível 1
 
Mensagens: 28
Data de registro: 12 Dez 2013 00:46
Cidade/Estado: são bernardo do campo
Curtiu: 1 vez
Mens.Curtidas: 0 vez

Utilização do Dosprinter internamente no código do programa

Mensagempor Kapiaba » 27 Jul 2015 12:44

Kapiaba
Colaborador

Colaborador
 
Mensagens: 1765
Data de registro: 07 Dez 2012 15:14
Cidade/Estado: São Paulo
Curtiu: 310 vezes
Mens.Curtidas: 119 vezes

Utilização do Dosprinter internamente no código do programa

Mensagempor marcelomteles » 28 Jul 2015 09:23

Kapiaba nom dia,

Eu já havia consultado esta postagem e não consegui evoluir na solução do meu problema. Vou consulta-lo novamente e revisar meu código, mesmo assim aguardo novas propostas de soluções de nossos outros colegas e outras sugestões.

Obrigado

Marcelo
Marcelo
Harbour 3.2.0
marcelomteles
Usuário Nível 1

Usuário Nível 1
 
Mensagens: 28
Data de registro: 12 Dez 2013 00:46
Cidade/Estado: são bernardo do campo
Curtiu: 1 vez
Mens.Curtidas: 0 vez

Utilização do Dosprinter internamente no código do programa

Mensagempor clauberromao » 17 Mai 2018 20:03

Olá Marcelo Boa Noite !!!
Utilizo o DosPrinter Há Tempos, internamente dentro do sistema, nunca me incomodou uma tela do dos que aparece quando utilizo o Run para executar o DosPrinter, mas um cliente reclamou e pediu que retirasse a tela. alguem ja conseguiu fazer isso ???
clauberromao
Usuário Nível 1

Usuário Nível 1
 
Mensagens: 12
Data de registro: 17 Mai 2018 19:54
Cidade/Estado: sobral/ceara
Curtiu: 1 vez
Mens.Curtidas: 0 vez

Utilização do Dosprinter internamente no código do programa

Mensagempor asimoes » 17 Mai 2018 20:23

Olá,

Tenta esse código:

cParameter = parâmetros para rodar o DosPrinter

A função vai executar o DosPrinter e não vai mostrar a tela dos

Execute( "DosPrinter.exe", cParameter, .T.)

FUNCTION Execute( cProgram, cParameter, lEspera )
LOCAL oShell, lOk := .T., nStyle, oErro

   lEspera := Hb_DefaultValue(lEspera, .T.)
   
   BEGIN SEQUENCE WITH __BreakBlock()
      oShell := Win_OleCreateObject( "WScript.Shell" )
   RECOVER
      lOk := .F.
   END
   IF lOk
      BEGIN SEQUENCE WITH __BreakBlock()
         /*
         intWindowStyle
         Description
         0  Hides the window and activates another window.
         1  Activates and displays a window. If the window is minimized or maximized, the system restores it to its original size and position. An application should specify this flag when displaying the window for the first time.
         2  Activates the window and displays it as a minimized window.
         3  Activates the window and displays it as a maximized window.
         4  Displays a window in its most recent size and position. The active window remains active.
         5  Activates the window and displays it in its current size and position.
         6  Minimizes the specified window and activates the next top-level window in the Z order.
         7  Displays the window as a minimized window. The active window remains active.
         8  Displays the window in its current state. The active window remains active.
         9  Activates and displays the window. If the window is minimized or maximized, the system restores it to its original size and position. An application should specify this flag when restoring a minimized window.
         10 Sets the show-state based on the state of the program that started the application.
         */
         nStyle := 0//1
         oShell:Run(cProgram + " " + cParameter, nStyle, lEspera)
      RECOVER
         lOk := .F.
      END
      oShell := Nil
   ENDIF
   
RETURN lOk
â–ºHarbour 3.x | Minigui xx-x | HwGuiâ—„
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Avatar de usuário

asimoes
Colaborador

Colaborador
 
Mensagens: 4919
Data de registro: 26 Abr 2007 16:48
Cidade/Estado: RIO DE JANEIRO-RJ
Curtiu: 341 vezes
Mens.Curtidas: 258 vezes

Utilização do Dosprinter internamente no código do programa

Mensagempor JoséQuintas » 17 Mai 2018 21:01

teste usando start /min

RUN ( "start /min dosprint.exe arquivo.prn" )
José M. C. Quintas
Harbour 3.2, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, PNotepad
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar de usuário

JoséQuintas
Membro Master

Membro Master
 
Mensagens: 18007
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 15 vezes
Mens.Curtidas: 1206 vezes




Retornar para Harbour

Quem está online

Usuários vendo este fórum: Bing [Bot], Google Adsense [Bot] e 11 visitantes


Ola Amigo, espero que meu site e forum tem lhe beneficiado, com exemplos e dicas de programacao.
Entao divulgue o link da Doacao abaixo para seus amigos e redes sociais ou faça uma doacao para o site forum...
MUITO OBRIGADO PELA SUA DOACAO!
Faça uma doação para o forum
cron
v
Olá visitante, seja bem-vindo ao Fórum Clipper On Line!
Efetue o seu login ou faça o seu Registro