Page 2 of 2

Re: Compilar con xharbour y msvc con hbmk2

Posted: Wed Jan 22, 2025 3:40 pm
by leandro
Antonio de nuevo gracias por responder y de nuevo perdona mi ignorancia, pero desconozco en donde se debe poner :shock:

Podrías ser un poco mas especifico.

Gracias de antemano.

Re: Compilar con xharbour y msvc con hbmk2

Posted: Wed Jan 22, 2025 6:59 pm
by Antonio Linares
Funcionando ok!

xgo.bat

Code: Select all | Expand

@setlocal
call "%ProgramFiles%\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvarsall.bat" amd64
C:\xHarbour64\bin\hbmk2 test.hbp -xhb -comp=msvc64
@endlocal
test.hbp

Code: Select all | Expand

-gui

-n-

#los prgs
test.prg

-Ic:\fwh64\include
-Lc:\fwh64\lib

-lFivehx64
-lFiveHC64

-lct
-lhbzip
-ltip
-lhbcomm
-lhbcurl
-llibcurl
-lhbzebra

-lsixapi
-ltip
-lpng
-lhbhpdf
-llibharu
-lhbmxml
-llibmysql
-llibcrypto

-lgdiplus
-lucrt
-lole32
-loledlg

-ldflag=/NODEFAULTLIB:libucrt
-ldflag+=/NODEFAULTLIB:msvcrt 

-oconodbc
#-inc
-run
test.prg

Code: Select all | Expand

#include "FiveWin.ch"

Otro()

function Otro()

    MsgInfo( "ok" )

return nil    

Re: Compilar con xharbour y msvc con hbmk2

Posted: Wed Jan 22, 2025 10:41 pm
by sysctrl2
Maestro Linares, por lo visto ya todo se debe de compilar con Visual Estudio ? :shock:
aprender entonces !!!

Re: Compilar con xharbour y msvc con hbmk2

Posted: Thu Jan 23, 2025 1:34 am
by Antonio Linares
Yo lo vengo diciendo desde hace mucho tiempo... :D

Pero Borland también funciona excelente. Es cuestión de gustos.

Eso si, el debugger a bajo nivel de Visual Studio es una maravilla y eso no lo tenemos en Borland...

Re: Compilar con xharbour y msvc con hbmk2

Posted: Thu Jan 23, 2025 1:32 pm
by leandro
Antonio buenos días como estas?

De nuevo gracias por todo, ya logramos compilar una aplicación pequeñita que necesitamos para la configuración de la conexión odbc, ahora queremos compilar una aplicación que tiene mas prgs, copiamos la misma configuración, agregamos los prg que generan la app, pero sale un error y no logro identificar por que se genera, el error:

Code: Select all | Expand

C:\cmplar_cnt_64>xgo64

C:\cmplar_cnt_64>call "C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvarsall.bat" amd64
**********************************************************************
** Visual Studio 2022 Developer Command Prompt v17.11.3
** Copyright (c) 2022 Microsoft Corporation
**********************************************************************
[vcvarsall.bat] Environment initialized for: 'x64'
xHarbour 1.3.1 Intl. (SimpLex) (Build 20250119)
Copyright 1999-2024, http://www.xharbour.org http://www.harbour-project.org/
Compiling '.\PRG\Hl_menu.prg'...
.\PRG\Hl_menu.prg(1524) Error E0032  Can't create output file: 'obj\Hl_menu.c'
Lines 1525, Functions/Procedures 15, pCodes 0
hbmk2[xhl_cnt_64]: Error: Running Harbour compiler. 1
C:\xHar_msvc_2409\bin\harbour.exe -n .\PRG\Hl_menu.prg -n- -oobj\ -iC:\xHar_msvc_2409\include -ic:\fwh64_2409\include -undef:.ARCH. -D__PLATFORM__WINDOWS

C:\cmplar_cnt_64>
La información del archivo de configuración

Code: Select all | Expand

-gui

-n-

#los prgs
.\PRG\Hl_menu.prg
.\PRG\Alyma.prg
.\PRG\Funciones.prg
.\PRG\Abusc.prg
.\PRG\Ajson.prg
.\PRG\Asql.prg
.\PRG\Photos.prg
.\PRG\Ainve.prg
.\PRG\Amete.prg

#recursos
.\RES\hl_cnt.res

-info

#-traceonly
#aqui es para colocar los archivo o y c que se generan en la compilacion incremental 
-workdir=.\obj

-Ic:\fwh64_2409\include
-Lc:\fwh64_2409\lib

-lFivehx64
-lFiveHC64

-lct
-lhbzip
-ltip
-lhbcomm
-lhbcurl
-llibcurl
-lhbzebra

-lsixapi
-ltip
-lpng
-lhbhpdf
-llibharu
-lhbmxml
-llibmysql
-llibcrypto

-lgdiplus
-lucrt
-lole32
-loledlg

-optim-

-ldflag=/NODEFAULTLIB:libucrt
-ldflag+=/NODEFAULTLIB:msvcrt 

-ohl_cnt
#-inc
-run

y el .bat

Code: Select all | Expand

@setlocal
call "%ProgramFiles%\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvarsall.bat" amd64
C:\xHar_msvc_2409\bin\hbmk2 xhl_cnt_64.hbp -xhb -comp=msvc64
@endlocal

Re: Compilar con xharbour y msvc con hbmk2

Posted: Thu Jan 23, 2025 1:35 pm
by leandro
Encontramos el error :D :D :D :oops: :oops:

Hacía falta crear la carpeta ./obj dentro del directorio en donde se compila :oops:

Encontramos la lógica del error, leyendo el mensaje que publicamos para buscar ayuda jejejejejeje.
Can't create output file: 'obj\Hl_menu.c'

Re: Compilar con xharbour y msvc con hbmk2

Posted: Thu Jan 23, 2025 2:01 pm
by leandro
Bueno ya logramos compilar nuestra aplicación mas grande (la que mas prg tiene) :D :D :D :D

A grandes rasgos parece que todo funciona con normalidad, la vamos a copiar en par de clientes de confianza para que la prueben. De momento y de manera visual encontramos el siguiente error:

Image

Pasa en los GET que se definen como password, ya le cambiamos el tipo de idioma y codificación, pero sigue fallando.

Así está definido el GET

Code: Select all | Expand

@ 40, 45 GET oGnro VAR oFac:hEncabezado["numero"] SIZE 100, 30 PIXEL OF oDlgFct UPDATE FONT oFont2 RIGHT PASSWORD

Re: Compilar con xharbour y msvc con hbmk2

Posted: Thu Jan 23, 2025 2:15 pm
by karinha
Leandro, Mira el

Code: Select all | Expand

METHOD DispText() CLASS TGet



         /* //-> Mudei em 25/10/2016 - Para Aparecer um * no PASSWORD-WS Joao
         SetWindowText( ::hWnd, Replicate( If( IsAppThemed(), Chr( 149 ), "*" ),;
                                           Len( Trim( ::oGet:buffer ) ) ) )
         */
         // cambiado:
         SetWindowText( ::hWnd, Replicate( If( IsAppThemed(), Chr( 42 ), "*" ),;
                                          Len( Trim( ::oGet:buffer ) ) ) )

Como esta?

Regards, saludos.

Re: Compilar con xharbour y msvc con hbmk2

Posted: Thu Jan 23, 2025 2:35 pm
by leandro
Joao gracias por responder

esta así:

Code: Select all | Expand

         SetWindowText( ::hWnd, Replicate( If( IsAppThemed(), Chr( 149 ), "*" ),;
                                           Len( Trim( ::oGet:buffer ) ) ) )

Re: Compilar con xharbour y msvc con hbmk2

Posted: Thu Jan 23, 2025 2:37 pm
by karinha
Leandro cambia para:

Code: Select all | Expand

SetWindowText( ::hWnd, Replicate( If( IsAppThemed(), Chr( 42 ), "*" ),;
                                           Len( Trim( ::oGet:buffer ) ) ) )
Y prueba.

Mira también:

https://forums.fivetechsupport.com/view ... =3&t=44512

Si el error persiste, habla con Enrico, probablemente sea un defecto en el xHarbour de 64 bits.

Regards, saludos.

Re: Compilar con xharbour y msvc con hbmk2

Posted: Fri Jan 24, 2025 5:27 pm
by leandro
Joao gracias por responder

Pero ya hemos revisado más cosas y parece que hay también varios problemas en los acentos, voy a intentar solucionar y cualquier cosa comento.

Re: Compilar con xharbour y msvc con hbmk2

Posted: Fri Jan 24, 2025 5:56 pm
by karinha
Leandro, problemas con la acentuación en FWH24.09, lo informé en este tema:

viewtopic.php?p=274969#p274969

El Maestro Nages no pudo dar una solución y hasta el día de hoy no ha respondido.

Quizás ya lo solucionó y se olvidó de responder al tema.

Gracias, tks.

Regards, saludos.

Re: Compilar con xharbour y msvc con hbmk2

Posted: Fri Jan 24, 2025 6:07 pm
by leandro
Déjame lo revisamos, pero no se, si sea nuestro caso, por que los problemas salieron pero cuando compilamos la aplicación con MSVC, mientras que con BCC funcionan correctamente.