joaosolution Posted February 1 Report Share Posted February 1 Bom dia Estou precisando enviar um objeto de uma aplicação para outra, ex: winexec(" PROGRAMA.EXE "+oDlg ) Alguém já fez algo parecido, ou têm uma sugestão? Abraços Quote Link to comment Share on other sites More sharing options...
kapiaba Posted February 1 Report Share Posted February 1 Bom dia mestre João. Veja se ajuda: https://forums.fivetechsupport.com/viewtopic.php?f=6&t=22720&p=121378&hilit=pasar+parametro&sid=f7c2b45f78a40913c59424dd41aa4d80#p121378 abs. Regards, saludos. Quote Link to comment Share on other sites More sharing options...
joaosolution Posted February 1 Author Report Share Posted February 1 Bom dia, obrigado pelo retorno João, mas no exemplo só trabalho com concatenação de varáveis string. Estava precisando passar um objeto como parâmetro. Att Quote Link to comment Share on other sites More sharing options...
emotta Posted February 1 Report Share Posted February 1 João dessa forma que vc está imaginando não é possível. Se você postar o motivo dessa outra aplicação precisar receber um objeto e o que é esse objeto, talvez dê pra pensar em alguma alternativa. Quote Link to comment Share on other sites More sharing options...
joaosolution Posted February 1 Author Report Share Posted February 1 Opa, Obrigado! Estou gerando vários relatórios em PDF simultâneos, está ocorrendo erro 9006 na aplicação. Então estava querendo gerar o pdf em um EXE separado para não ocorrer o erro de memória. Abraços Quote Link to comment Share on other sites More sharing options...
kapiaba Posted February 1 Report Share Posted February 1 error Unrecoverable error 9006. estouro de pilha. Mostre como está fazendo. E se for windows 10, qual é o PENTE DE MEMÓRIA? Regards, saludos. Quote Link to comment Share on other sites More sharing options...
joaosolution Posted February 1 Author Report Share Posted February 1 Boa tarde Gero o relatório, e salvo em pdf. FWSavePreviewToPDF( oPreview,cDestino,.F. ) Salva 10 e ocorre o erro Att Quote Link to comment Share on other sites More sharing options...
Ladinilson Posted February 1 Report Share Posted February 1 1 hora atrás, joaosolution disse: Boa tarde Gero o relatório, e salvo em pdf. FWSavePreviewToPDF( oPreview,cDestino,.F. ) Salva 10 e ocorre o erro Att Tente dar uma "aliviada" na memória a cada envio com : HB_GCALL( .T. ) Espero que ajude. E o Corinthinas e Vasco começa seu ano bem kkkkkk rochinha 1 Quote Link to comment Share on other sites More sharing options...
kapiaba Posted February 2 Report Share Posted February 2 HB_GCALL( .T. ) não vai ajudar muito neste caso. Tente salvar direto VIA PRINTER Não use este comando: FWSavePreviewToPDF( oPreview,cDestino,.F. ). Você não respondeu: SE WINDOWS 10, QUAL O PENTE DE MEMÓRIA? VERSÃO DO FIVEWIN? #Include "FiveWin.ch" FUNCTION Main() LOCAL WNOMBREARQPDF IF FILE( "ARCHIVO.PDF" ) ERASE( "ARCHIVO.PDF" ) ENDIF MsgRun( "GENERANDO ARCHIVO *.PDF...", ; "Por Favor, Aguarde... ", ; { || WinExec( Generar_PDF() ), 3 } ) // Perfect, mister Nages, Thank You IF FILE( "ARCHIVO.PDF" ) WNOMBREARQPDF := "c:\FWH1905\SAMPLES\archivo.pdf" // ShellExecute( 0, "Print", WNOMBREARQPDF,,, 3 ) ENDIF RETURN NIL FUNCTION Generar_PDF() LOCAL cText := MEMOREAD( "c:\fwh1905\samples\arq.txt" ) LOCAL oPrn, oFont, nLinha, nPage := 1 nLinha := 0 PRINT oPrn FILE "archivo.pdf" // em silencio sem preview DEFINE FONT oFont NAME "COURIER NEW" SIZE 0,-10 OF oPrn WHILE .NOT. EMPTY( cText ) SYSREFRESH() CURSORWAIT() PAGE @ nLinha, 1 PRINT TO oPrn TEXT @cText SIZE 7,10 INCHES FONT oFont IF nLinha >= 25 quit ENDPAGE nPage := nPage + 1 // Number pages PAGE ENDIF ENDPAGE nLinha := nLinha + 1 ENDDO ENDPRINT // ? nLinha, nPage RELEASE FONT oFont CURSORARROW() RETURN NIL Quote Link to comment Share on other sites More sharing options...
emotta Posted February 2 Report Share Posted February 2 João, pra fazer o que vc precisa o seu executavel externo terá que gerar o relatório e ai com o objeto você gera o pdf e fecha ele e repete o processo no programa principal. Então em vez de passar como parametro o objeto (isso não é possível) você vai passar, por exemplo, os parametros para geração do relatório para que com isso ele gere o objeto de impressão e use a função para converter para pdf. É por ai o caminho. Quote Link to comment Share on other sites More sharing options...
kapiaba Posted February 2 Report Share Posted February 2 Esqueça esse "Truque" do Emotta, se a sua versão for atual, use HARUPDF direto do FiveWin, os PDFS ficam bem mais leves. Veja: https://forums.fivetechsupport.com/viewtopic.php?f=6&t=43759&p=264281&hilit=HARUPDF&sid=81e6b6b5d2073314edba73fd01b3e46a#p264255 Abs. Regards, saludos. Quote Link to comment Share on other sites More sharing options...
emotta Posted February 2 Report Share Posted February 2 Kapiaba, não é truque meu, eu falei o que ele precisa fazer se quiser fazer o que pediu. Quanto a usar bibliotecas para PDF, que inclusive é o que eu faço, estou de total acordo e de fato é muito melhor, mas não é o que ele pediu. 1 hora atrás, kapiaba disse: Esqueça esse "Truque" do Emotta, se a sua versão for atual, use HARUPDF direto do FiveWin, os PDFS ficam bem mais leves. Veja: https://forums.fivetechsupport.com/viewtopic.php?f=6&t=43759&p=264281&hilit=HARUPDF&sid=81e6b6b5d2073314edba73fd01b3e46a#p264255 Abs. Regards, saludos. Quote Link to comment Share on other sites More sharing options...
joaosolution Posted February 2 Author Report Share Posted February 2 Boa tarde Meu FW 12.06 ainda não é o atual. Att Quote Link to comment Share on other sites More sharing options...
kapiaba Posted February 2 Report Share Posted February 2 João, testou assim? Em Windows 10, o mínimo de memória RAM, é 8 Gbs não tem mágica. PRINT oPrn FILE "arquivo.pdf" // em silencio sem preview Quote Link to comment Share on other sites More sharing options...
joaosolution Posted February 2 Author Report Share Posted February 2 Boa tarde, muito obrigado pelas ajudas Sim testei e não faz nada, não gera o arquivo, só gera com a função FWSavePreviewToPDF( oPreview,cDestino,.F. ) Estou partindo para a solução do emotta Abraços Quote Link to comment Share on other sites More sharing options...
emotta Posted February 2 Report Share Posted February 2 Joao, o que sugeri é pra resolver rápido, mas pra resolver direito o correto é vc usar alguma lib pra gerar um pdf menor como o HARUPDF (contrib xharbour) ou o PDF.LIB (este eu uso). Se fosse pra eu escolher começar algo eu iria para o HARUPDF pois o PDF.LIB já algum tempo que não tem atualização (pelo menos desconheço). Quote Link to comment Share on other sites More sharing options...
kapiaba Posted February 2 Report Share Posted February 2 HARUPDF que funciona com a sua versão tranquilamente: https://mega.nz/file/RIlSAB6J#L4qDeL8lY6fmAh0B0oMZ5wQZ5dR9BgpZ9zhezinPT2w Regards, saludos. Quote Link to comment Share on other sites More sharing options...
joaosolution Posted February 2 Author Report Share Posted February 2 Muito obrigado pelas dicas. João ainda bem que vc está longe se estivesse perto te dava um beijo. Procurei muito a pdflib e não encontrei Emotta obrigado pelas dicas. Abraços Quote Link to comment Share on other sites More sharing options...
kapiaba Posted February 3 Report Share Posted February 3 18 horas atrás, joaosolution disse: Muito obrigado pelas dicas. João ainda bem que vc está longe se estivesse perto te dava um beijo. Procurei muito a pdflib e não encontrei Emotta obrigado pelas dicas. Abraços KKKKKKKKKKKKKK, é só mandar as passagens de AVIÃO, que eu vou com o Emotta. kkkkkkkkkkkkkkkkkkkkkk Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.