Página 1 de 2

tela sistema fica pequena quando envio arquivo para o Acbr

Enviado: 08 Ago 2016 15:11
por porter
olá pessoal,
Quando envio o arquivo para o AcbrMonitor, através do sistema, a tela está ficando pequena, ela não se mantem maximizada, tem como evitar esse problema ?

Acho que o problema acontece, quando o arquivo SAINFE.TXT é copiado para a pasta do Acbr, então quando o arquivo vai ser processado pelo Acbr, ele diminui a tela do sistema.

xHarbour.

obrigado.

tela sistema fica pequena quando envio arquivo para o Acbr

Enviado: 08 Ago 2016 16:08
por Kapiaba
Modo console?

tela sistema fica pequena quando envio arquivo para o Acbr

Enviado: 08 Ago 2016 17:00
por porter
olá Kapiaba,
Sim modo console com xHarbour.

tela sistema fica pequena quando envio arquivo para o Acbr

Enviado: 08 Ago 2016 21:35
por JoséQuintas
Porque complicar?
Use como janela, só configurar o tamanho do fonte NO Windows.

tela sistema fica pequena quando envio arquivo para o Acbr

Enviado: 09 Ago 2016 09:38
por Kapiaba
fonte.png

tela sistema fica pequena quando envio arquivo para o Acbr

Enviado: 09 Ago 2016 09:41
por Kapiaba
resolucao.png

tela sistema fica pequena quando envio arquivo para o Acbr

Enviado: 09 Ago 2016 10:08
por Jairo Maia
Olá Pessoal,
porter escreveu:Acho que o problema acontece, quando o arquivo SAINFE.TXT é copiado para a pasta do Acbr, então quando o arquivo vai ser processado pelo Acbr, ele diminui a tela do sistema.
Mas está estranho isso. Se não estou enganado, o Porter está usando tela cheia com a GTWVT.

Porter, poste o trecho do seu sistema que você salva o arquivo ENT.TXT, assim poderemos saber se é interferência de alguma função de baixo nível que está afetando a resolução da tela do sistema.

tela sistema fica pequena quando envio arquivo para o Acbr

Enviado: 09 Ago 2016 15:47
por porter
olá pessoal,
Eu copio o ENTNFE.CMD para a pasta C:\AcbrMonitorPlus, em seguida renomeio para ENTNFE.TXT, acho que é nesse momento que a tela do meu sistema fica pequena, porque o Acbr cria o arquivo SAINFE.TXT

Código: Selecionar todos

cDirDoMonitor := "C:\AcbrMonitorPlus''
cArq := "ENTNFE.CMD"

FILECOPY( cArq, cDirDoMonitor + '\ENTNFe' + '.CMD' )
Aguarde()
FRENAME( cDirDoMonitor + '\ENTNFe' + '.CMD', cDirDoMonitor + '\ENTNFe' +'.TXT' )
Aguarde()

PROCEDURE Aguarde
   	  While !File( cDirdoMonitor + '\SAINFE' + '.TXT' ) .And. nTentativas < 20  // aguarda no máximo 10 segundos
 	      nTentativas++
              Inkey ( 0.5 )
              @24,00 SAY PADC(msg_ + " " + alltrim(STR(nTentativas,6,0)),80) color "R*/N"
 	  EndDo


tela sistema fica pequena quando envio arquivo para o Acbr

Enviado: 10 Ago 2016 11:10
por Kapiaba
Você seguiu esta dica aqui?

https://pctoledo.org/forum/viewto ... =4&t=17187

Veja se te ajuda, é em fivewin, mas dá para entender perfeitamente a lógica é a mesma para xHarbour, basta ignorar a parte visual:

http://fivewin.com.br/index.php?/topic/ ... ar-ideias/

Abs

tela sistema fica pequena quando envio arquivo para o Acbr

Enviado: 10 Ago 2016 11:24
por Jairo Maia
Olá Porter,

Você está usando duas funções de baixo nível, a saber: FileCopy() e FRename(), talvez seja isso que está mudando a tela.

No entanto, altere esse trecho:

Código: Selecionar todos

FILECOPY( cArq, cDirDoMonitor + '\ENTNFe' + '.CMD' )
Aguarde()
FRENAME( cDirDoMonitor + '\ENTNFe' + '.CMD', cDirDoMonitor + '\ENTNFe' +'.TXT' )
Aguarde()
Por esse:

Código: Selecionar todos

FileDelete( cDirDoMonitor + '\SAINFe.TXT' )
FILECOPY( cArq, cDirDoMonitor + '\ENTNFe.TXT' )
Aguarde()
Veja o que acontece.
Kapiaba escreveu:Você seguiu esta dica aqui?
Acho que não Kapiaba, porque se estivese, veja que pararia 10 segundos após a linha FileCopy().

tela sistema fica pequena quando envio arquivo para o Acbr

Enviado: 10 Ago 2016 14:26
por JoséQuintas
Por acaso acompanhou pelo debug, pra ver se é nessa parte ou depois?

tela sistema fica pequena quando envio arquivo para o Acbr

Enviado: 10 Ago 2016 14:28
por JoséQuintas
E nesta parte? (se usa console)
janelanormal.png

E se usa WVT e maximiza, melhor não maximizar mais.

tela sistema fica pequena quando envio arquivo para o Acbr

Enviado: 11 Ago 2016 15:53
por porter
olá pessoal,
Verificando pelo debugador, a tela do sistema está ficando pequena ou seja desconfigurando, exatamente nesse comando:

No momento que ENTNFE.CMD é copiado para ENTNFE.TXT, é o momento que o Acbr gera o SAINFE.TXT, desconfigurando a tela do sistema.

Código: Selecionar todos

cDirDoMonitor := "C:\AcbrMonitorPlus"
FILECOPY( cDirDoMonitor + '\ENTNFe' + '.CMD', cDirDoMonitor  + '\ENTNFe' + '.TXT' )  <--- nessa linha

tela sistema fica pequena quando envio arquivo para o Acbr

Enviado: 11 Ago 2016 16:42
por JoséQuintas
Esse FileCopy() é função do Harbour, ou você que criou?

Uso o COPY FILE ( file1 ) TO ( file2 )

tela sistema fica pequena quando envio arquivo para o Acbr

Enviado: 11 Ago 2016 16:50
por JoséQuintas
Opções:

hbct.hbc
FileCopy()

hbwin.hbc
wapi_CopyFile()

xhb.hbc
xhb_CopyFile()

Harbour
hb_vfCopyFile()
__CopyFile() (usada em COPY FILE a TO b)

FileCopy() em hbct está em fonte PRG. Não dá pra ver nada de errado na rotina.
Se for nela mesmo, seria bom informar o bug, porque todo Harbour caminha pra usar as mesmas funções de lá. (vf*)
Ainda acho estranho ser nessa parte, mais provável que possa ter alguma rotina.

Procure se não tem SetMode em algum fonte que não deveria ter.