Erro com versões diferentes

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

Moderador: Moderadores

tonicm
Usuário Nível 2
Usuário Nível 2
Mensagens: 55
Registrado em: 08 Mar 2016 21:51
Localização: Porto

Erro com versões diferentes

Mensagem por tonicm »

Boas.

Decidi instalar a última versão do Viktor Szakats e agora não consigo compilar as minhas aplicações.

Anexo ficheiros .txt com o resultado compilando com a versão antiga e com a última versão.
Alguém consegue ajudar sff ?
Temp.zip
Erros em versões diferentes
(5.26 KiB) Baixado 312 vezes
Kapiaba
Colaborador
Colaborador
Mensagens: 1908
Registrado em: 07 Dez 2012 16:14
Localização: São Paulo
Contato:

Erro com versões diferentes

Mensagem por Kapiaba »

Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Erro com versões diferentes

Mensagem por JoséQuintas »

Não é o Harbour que não compila, é o SEU APLICATIVO que não compila.

Tá na hora de rever seu BAT estranho, e as necessidades estranhas do seu aplicativo.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"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 do usuário
Nascimento
Usuário Nível 4
Usuário Nível 4
Mensagens: 763
Registrado em: 19 Jul 2008 12:11
Localização: OLINDA-PE

Erro com versões diferentes

Mensagem por Nascimento »

Mensagempor JoséQuintas » 24 Fev 2017 10:44
Não é o Harbour que não compila, é o SEU APLICATIVO que não compila.

Tá na hora de rever seu BAT estranho, e as necessidades estranhas do seu aplicativo.
tomo as palavras do amigo JoséQuintas como minhas , analize seus .bat´s aqui compilo sem problemas nas versoes mas novas
para evitar esta fazendo set path nos bats

fiz como faziamos no clipper tudo em variaveis de ambiente

usando sem problemas harbour/minigui extended
INCLUDE

C:\Mingw\Include\;C:\Harbour\Include\;C:\Minigui\Include\;

LIB
C:\Mingw\Lib\;C:\Harbour\Lib\;C:\Minigui\Lib\;

Path
C:\Harbour\Bin\;C:\Mingw\Bin\;
uso desta forma desde sempre ate hj sem problemas
A arte de programar é simplesmente fazer seus pensamentos serem interpretados por uma maquina :) clipper 5.3 /harbour/minigui
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Erro com versões diferentes

Mensagem por JoséQuintas »

Vi que tem comando pra mudar de pasta, subprojeto.
nem precisa mudar de pasta pra isso.

Isto vai gerar seu aplicativo, gerar a lib se for necessário (o projeto sualib.hbp), e linqueditar a lib

Código: Selecionar todos

-----programa.hbp
um.prg
dois.prg
\pasta\sualib.hbp
-lsualib
isto na outra pasta vai gerar sua lib

Código: Selecionar todos

---------sualib.hbp
libum.prg
libdois.prg
-osualib
-hblib
A indicação do HBP dentro do primeiro, apenas indica um subprojeto
o hbmk2 se vira pra gerenciar pastas, cada projeto tem a sua.
O detalhe é que desse jeito a LIB será gerada na pasta do aplicativo.
Mas se precisar, já reconstrói LIB e EXE.
Ou -rebuild, já reconstrói tudo.

Isso é útil, porque se trocou o Harbour, melhor recompilar tudo que pertence ao projeto, incluindo sub-projetos.
A configuração de um projeto não vale pro subprojeto.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
tonicm
Usuário Nível 2
Usuário Nível 2
Mensagens: 55
Registrado em: 08 Mar 2016 21:51
Localização: Porto

Erro com versões diferentes

Mensagem por tonicm »

Esta aplicação era em clipper.
Em Março 2016 mudei para o harbour.

Vou indicar o meu método de trabalho.
Agradeço ajuda se acharem que estou a fazer algo errado.


Eis o que utilizo:
- Editor: Harbour IDE ( HbIDE ) QtContribs do Pritpal Bedi para compilar o meu projeto.
Os ficheiros que anexei são gerados ao compilar por este editor.
https://sourceforge.net/projects/qtcont ... rce=navbar


- Harbour-core do Viktor Szakats - Harbour fork (from https://github.com/harbour/core) with additions and fixes = 3.4
https://ci.appveyor.com/project/vsz/harbour-core


- msys2: para mingw32 e mingw64
https://msys2.github.io/

Código: Selecionar todos

pacman -S VCS base-devel msys2-devel mingw-w64-{i686,x86_64}-toolchain

- PageScript do AbeeLabs para impressão (a empressa fechou, mas disponibilizou código e ficheiro DLL)

Código: Selecionar todos

1. Download PageScript32 package and unzip it:

   <https://web.archive.org/web/abeelabs.com/downloads/PS32.zip>

   sha256: `c9a9fb6d81054468d2884a913275184a318be8a5c830bc901376ae88e720849d`

2. Copy these files from PageScript32 installation
   to this directory:

      `PScript.ch`
      `TPSCRIPT.PRG`

   You may also want to copy this file to the `tests` subdirectory:

      `PSTest.prg`

3. Apply supplied patch to the source using GNU Patch:

   `patch -lNi ps32.dif`

4. Build it:

   `hbmk2 ps32.hbp`

5. Done.

6. Finally, to build an application with PageScript32, use:

   `hbmk2 myapp.prg ps32.hbc`

[vszakats]


- Utilizo também algumas listagens com o hbvpdf para criar PDFs, pois as versões antigas do PS32 não permitia criar PDF (o Viktor Szakats retirou dos extras em 2016-12-02)
Neste caso utilizo apenas os ficheiros: CORE.PRG, hbvpdf.ch e FONTS.DAT


- Neste momento estou a passar para base de dados em MySQL utilizando o rddado (o Viktor Szakats também retirou dos extras em 2016-12-02)
Utilizo a pasta rddado, onde compilo apenas uma vez (quando atualizo o harbour-core) no editor e ele copia para a pasta C:\hb34\addons

Código: Selecionar todos

2016-12-02 20:04 UTC+0100 Viktor Szakats (vszakats users.noreply.github.com)
  - extras/gfspell/*
  - extras/hbdroid/*
  - extras/hbusb/*
  - extras/hbvpdf/*
  - extras/hbxlsxml/*
  - extras/httpsrv/*
  - extras/rddado/*
  * package/mpkg_win.sh
    - remove unfinished, unmaintaned and/or broken packages from the /extras
      directory.
      You can find the last revision of them archived here:
         https://harbour.github.io/archive/gfspell.zip
         https://harbour.github.io/archive/hbdroid.zip
         https://harbour.github.io/archive/hbusb.zip
         https://harbour.github.io/archive/hbvpdf.zip
         https://harbour.github.io/archive/hbxlsxml.zip
         https://harbour.github.io/archive/httpsrv.zip
         https://harbour.github.io/archive/rddado.zip
         (Note these contain several maintenance updates compared
         to the latest version hosted as part of mainline 3.2 Harbour)
     Or as part of the last repository archive that still contained them:
         https://github.com/vszakats/harbour-cor ... 170812.zip

Projeto atual onde tenho problemas com as diferentes versões do harbour-core:

Código: Selecionar todos

#
# $Id$
#

-3rd=hbide_version=1.0
-3rd=hbide_title=SoftSAL
-3rd=hbide_workingfolder=E:\Trab\SoftSal
-3rd=hbide_output=SoftSAL

-oMAIN
-inc
-quiet
-lxhb
-lhbwin
-lhbct
-lhbblink
-gui
-icon=E:\Trab\SoftSal\Recursos\SIERGroup2016.ico
MAIN.PRG
ALTDATA.PRG
ANCLCSAL.PRG
CALCSAL.PRG
CORE.PRG
DIAUTIL.PRG
EDI.PRG
ERRORSYS.PRG
EXTENSU.PRG
FICHAIRS.PRG
FICHARE.PRG
FICHASAL.PRG
FUNCOES.PRG
FUNDO.PRG
INFORMA.PRG
LISCAMPO.PRG
LOCKS.PRG
MANUTAB.PRG
MAP_GDT.PRG
MAPA_DMR.PRG
MAPAANO.PRG
MAPAREND.PRG
MAPBAN.PRG
MAPCAI.PRG
MAPCUS.PRG
MAPEE.PRG
MAPFAL.PRG
MAPFER.PRG
MAPQP.PRG
MAPRELUN.PRG
MAPRET.PRG
MAPSEG.PRG
MAPSEL.PRG
MAPSIN.PRG
MAPVENC.PRG
MENSAG.PRG
MENU.PRG
MENUSYS.PRG
MMANUNT.PRG
MODELO10.PRG
MSALARIO.PRG
MUDADO.PRG
PASSW.PRG
PRINTER.PRG
RECSAL.PRG
RU_ANX_C.PRG
RU_ANX_F.PRG
S_GETSYS.PRG
T_FUND.PRG
TONIDLL.PRG
VER_CHEC.PRG
VERSOES.PRG
VTABELAS.PRG
rddado.hbc
ps32.hbc
MAIN.rc

Também procuro alternativas ao Pagescript:
Razões:
- A DLL é em 32 bits, e como já não tem suporte nunca vou conseguir compilar o projeto para 64 bits.
- Ao criar PDF ocupa cerca de 150kb, enquanto se imprimir a mesma listagem para o PDFCreator só ocupa 25kb. Grande diferença, quando a listagem é a mesma.
- Se imprimir uma imagem que ocupe a folha inteira (logotipo empresa) diretamente para a impressora, não imprime a imagem por causa das margens, mas se imprimir para o PDFCreator já imprime.
- Tem um limite de cores.
https://groups.google.com/forum/#!topic ... r5uk2Iz80Q
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Erro com versões diferentes

Mensagem por JoséQuintas »

Acho que a melhor opção seria usar a Harupdf, que faz parte do Harbour.

E nas funções que faltam, seria usar o hbmk2 pra pesquisar se são conhecidas:

hbmk2 -find dllload
hbxpp.hbc (installed):
DllLoad()

hbmk2 -find dllcall
hbxpp.hbc (installed):
DllCall()

hbmk2 -find dllpreparecall
hbxpp.hbc (installed):
DllPrepareCall()

hbmk2 -find dllexecutecall
hbxpp.hbc (installed):
DllExecuteCall()

seria acrescentar hbxpp.hbc

Acredito que talvez seja possivel usar DLL 32 bits a partir de 64 bits.
Talvez no Harbour-users possam fornecer informações.
Pelo menos até passar pra harupdf.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Responder