Estimado Jose,
Tienes que enviar un mensaje por whatsapp al numero que se proporcionó :idea:
Estimado Jose,
Tienes que enviar un mensaje por whatsapp al numero que se proporcionó :idea:
Finalmente, con vuestra ayuda, he conseguido construir Harbour con sus contribuciones.
Copio como ha sido el procedimiento y si alguien le quiere meter el lápiz para mejorarlo que lo haga.
La idea era poder siempre contar con la última versión de Harbour para poderla probar con fwh64 beta tester.
S.O.: W10 + MSVC 64.
1.- Descargo Harbour: https://sourceforge.net/projects/harbour-project/files/binaries-windows/nightly/
harbour-nightly-win.exe
Lo descomprimo en: C:\hb32-core-master
2.- Descargo curl (La opción: Windows 64-bit 8.19.0 tool + devel the curl project): Download curl for x64 curl for x64: https://curl.se/windows/
Y la descomprimo en C:\curl
3.- Descargo openssl: https://slproweb.com/products/Win32OpenSSL.html
Descargar: Win64 OpenSSL v3.6.2
Lo descomprimo en: C:\OpenSSL-Win64
4.- Abro una terminal con: cmd xNative Tools Command Prompt for VS, saldrá por pantalla:
**********************************************************************
** Visual Studio 2026 Developer Command Prompt v18.1.1
** Copyright (c) 2025 Microsoft Corporation
**********************************************************************
[DEBUG:ext\vcvars.bat] Found potential v145 version file: 'Microsoft.VCToolsVersion.VC.14.50.18.0.txt'
[DEBUG:ext\vcvars.bat] Testing v145 version file: 'Microsoft.VCToolsVersion.VC.14.50.18.0.txt'
[vcvarsall.bat] Environment initialized for: 'x64'
C:\Program Files\Microsoft Visual Studio\18\Community>5.- Ejecuto el siguiente bat, que he llamado: buildHarbour.bat
Nota: He dejado en el bat algunos comentarios a modo de recordatorio.
El proceso lleva, en mi ordenador, unos 12 minutos, tras lo cual aparecerá Harbour y sus contribuciones en el directorio: C:\Harbour_MSVC64
Como necesito usar multihilos, openssl apunta a C:\OpenSSL-Win64\lib\VC\x64\MT
Tenedlo en cuenta por si vuestro caso es distinto.
:: Arrancar antes como administrador: x64 Native Tools Command Prompt for VS
@echo off
cd /d c:\hb32-core-master
:: 1. Cargar el entorno de MSVC (Ajusta la ruta según tu versión de VS)
call "C:\Program Files\Microsoft Visual Studio\18\Community\VC\Auxiliary\Build\vcvars64.bat"
:: 2. Configurar variables de entorno
set HB_COMPILER=msvc64
set HB_INSTALL_PREFIX=C:\Harbour_MSVC64
:: 3. Activar compilación estática
set HB_STATIC_CURL=yes
set HB_STATIC_OPENSSL=yes
:: 4. Apunta a la raíz de la carpeta de la librería, poner solo el directorio principal
set HB_WITH_CURL=C:\curl\include
set HB_WITH_OPENSSL=C:\OpenSSL-Win64\include
:: 5. [Opcional pero RECOMENDADO] Añadir las rutas de las librerías (.lib) al linker de MSVC
:: Ajusta estas rutas a donde realmente estén tus archivos .lib dentro de OpenSSL y cURL
set LIB=%LIB%;C:\curl\lib;C:\OpenSSL-Win64\lib\VC\x64\MT
:: 6. Proceso de limpieza y compilación
win-make clean
win-make
:: 7. Instalación (Esto debería crear C:\Harbour_MSVC\bin, \lib, \include y \contrib)
win-make install
:: 8. Para crear hbcurl (independientemente):
::cd c:\hb32-core-master\contrib\hbcurl
::set HB_WITH_CURL=C:\curl\include
::C:\hb32-core-master\bin\win\msvc64\hbmk2 -hblib hbcurl.hbp -oC:\Harbour_MSVC\lib\win\msvc64\Harbour tienes que descargarlo desde aqui:
git clone https://github.com/harbour/core harbour
ó descarga el zip desde aqui:
https://github.com/harbour/core/archive/refs/heads/master.zip
Maestro, este comando daña FIVDBU.PRG. Por favor, revíselo.
SetAutoHelp( .T. )Regards, saludos.
Algo me está pasando cuando compilo porque, al arrancar, me dice el ejecutable que:
"La ejecución del código no puede continuar porque no se encontró libcurl.dll"
Antes no me hacía esto, y el ejecutable era monolítico.
Compilo de esta manera:
buildhbmk2.bat:
@echo off
if "%1" == "" goto SINTAX
:: Set Environment Paths
if "%FWDIR%" == "" set FWDIR=C:\fwh64cis
if "%HBDIR%" == "" set HBDIR=C:\Harbour_MSVC
set hdir=%HBDIR%
set hdirl=%hdir%\lib\win\msvc64
set hdirb=%hdir%\bin
:: Setup MSVC Environment if not already set (Using path from buildh64.bat)
if "%VCINSTALLDIR%" == "" (
if exist "%ProgramFiles%\Microsoft Visual Studio\18\Community\VC\Auxiliary\Build\vcvarsall.bat" (
call "%ProgramFiles%\Microsoft Visual Studio\18\Community\VC\Auxiliary\Build\vcvarsall.bat" x86_amd64
) else (
:: Fallback to standard locations just in case
if exist "%ProgramFiles%\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvarsall.bat" (
call "%ProgramFiles%\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvarsall.bat" x86_amd64
) else (
echo WARNING: Could not find vcvarsall.bat in known locations.
)
)
)
:: Clean previous build artifacts if needed (hbmk2 handles dependencies, but we'll clean expected output just in case)
if exist %1_64.exe del %1_64.exe
:: Check for Resource file
set "RCS="
if exist %1.rc set "RCS=%1.rc"
:: Run hbmk2
echo Compiling and Linking with hbmk2...
%hdirb%\hbmk2 go64.hbp %1.prg %RCS% -comp=msvc64 -o%1_64
if errorlevel 1 goto ERROR
echo * Application successfully built *
goto :eof
:SINTAX
echo SYNTAX: buildhbmk2 [Program] {-- No especifiques la extension PRG}
goto :eof
:ERROR
echo * Build errors *
goto :eof]go64.hbp:
-gui
-info
-mt
# Flags de compilación C
-cflag=-D__64__
-cflag=-D__NODEBUG__
-cflag=/MT
# FiveWin Configuration
-incpath=.
-incpath=C:\fwh64cis\include
-LC:\fwh64cis\lib
-lFiveH64
-lFiveHC64
# Rutas de búsqueda para archivos .hbc y externos
# Harbour Contribuciones (.hbc)
hbziparc.hbc
hbmzip.hbc
xhb.hbc
hbtip.hbc
hbzebra.hbc
hbcurl.hbc
hbmxml.hbc
hbct.hbc
hbcomm.hbc
# Rutas directas para evitar bloqueos de hbmk2
-ldflag=/NODEFAULTLIB:msvcrt
-ldflag=/NODEFAULTLIB:ucrt
-ldflag=C:\harbour_msvc\lib\win\msvc64\hbzlib.lib
-ldflag=C:\harbour_msvc\lib\win\msvc64\hbpcre.lib
-ldflag=C:\harbour_msvc\lib\win\msvc64\hbziparc.lib
# Librerías externas
-LC:\curl\lib
# --- Librerías de Windows y Sistema ---
-lkernel32 -luser32 -lgdi32 -lwinspool -lcomdlg32 -ladvapi32 -lshell32 -lole32 -loleaut32 -luuid -lodbc32 -lodbccp32 -liphlpapi -lversion -lcomctl32 -lmpr -lwsock32 -lmsimg32 -loledlg -lpsapi -lgdiplus -lurlmon -lwinmm -lvfw32 -lws2_32 -lstrmiids -lUxTheme -lwininetSí, curl se está enlazando. Dos vías:
hbcurl.hbc — resuelve hbcurl.lib (wrapper Harbour) y automáticamente tira de libcurl.lib.
-LC:\curl\lib — añade C:\curl\lib al path de búsqueda del linker.
Ahí está el problema. Tu instalación en C:\curl\lib\libcurl.lib es casi seguro la import lib del curl oficial (no la
estática) — enlaza contra libcurl.dll en runtime. Antes era monolítico porque usaba la libcurl.lib estática que viene
con Harbour (en C:\Harbour_MSVC\lib\win\msvc64\libcurl.lib).
Solución: quita -LC:\curl\lib del .hbp, o fuerza la ruta estática:
-ldflag=C:\Harbour_MSVC\lib\win\msvc64\libcurl.lib
Así el linker resuelve libcurl contra la estática de Harbour y vuelves al exe monolítico.
Para verificar qué tienes en C:\curl\lib, si hay sólo import lib debería existir también libcurl.dll cerca. La
estática de Harbour suele rondar los 3-4 MB; la import lib apenas unos KB.
He optado por construir libcurl.lib desde los fuentes de curl para msvc 64. Esto hace innecesario openssl y usa la seguridad propia de windows. Ha sido una buena paliza hasta dar con toda la configuración pero al final se ha generado el ejecutable sin dependencias de dll.
Maestro Antônio: La acentuación FW_SetUnicode( .T. ) funciona con Código(@ Say). Con RECURSOS de Borland Resources WorkShop.exe, NO FUNCIONA. A continuación se muestra un ejemplo completo:
// C:\FHW203\SAMPLES\TESTSAY4.PRG y TESTSAY4.RC -> By Kapiaba.
#include "FiveWin.ch"
#Define CLR_MENTA nRGB( 221, 255, 238 ) //-> Cor de Menta
#Define CLR_SOFTYELLOW nRGB( 255, 251, 225 ) //-> Amerelo Soft.
EXTERNAL HB_LANG_PT, HB_CODEPAGE_PTISO, HB_CODEPAGE_PT850
#ifNdef __XHARBOUR__ // HARBOUR
REQUEST HB_CODEPAGE_UTF8
REQUEST HB_CODEPAGE_UTF8EX
#endif
STATIC oWnd
MEMVAR NFINICIAL, NFFINAL
FUNCTION Main()
LOCAL oMenu
HB_LANGSELECT( 'PT' )
HB_SETCODEPAGE( "UTF8" )
HB_CDPSELECT( "UTF8EX" )
HB_SETCODEPAGE( "PT850" )
HB_CDPSELECT( "PTISO" )
// EM FWH2603, ACENTUACAO NAO FUNCIONA SE .T. COM RECURSOS(WORKSHOP.exe)
FW_SetUnicode( .T. ) // NO FUNCIONA CON RECURSOS(WORKSHOP.exe) .F. FUNCIONA. ???
SetGetColorFocus( CLR_MENTA )
tGet():lDisColors := .F.
tGet():nClrTextDis := CLR_HBLUE
tGet():nClrPaneDis := CLR_SOFTYELLOW
MENU oMenu 2007
MENUITEM "Test Say With Cod" ACTION( Test_Say_Cod() )
SEPARATOR
MENUITEM "Test Say With Res" ACTION( Test_Say_Res() ) // TESTSAY4.RC
ENDMENU
DEFINE WINDOW oWnd TITLE "Test Say" from 0,0 to 400,800 pixel menu oMenu MDI
ACTIVATE WINDOW oWnd CENTERED
RETURN NIL
FUNCTION Test_Say_cod()
LOCAL oDlg, oSay, oBrush, oSay2, TRAB
TRAB := OemToAnsi( "PESQUISAR AS NOTAS FISCAIS ELETRâNICAS, PARA ENVIAR EMAILS - LEIA AS INSTRU€åES" )
DEFINE BRUSH oBrush GRADIENT { { 0.4, nRGB( 75, 144, 223 ), nRGB( 41, 85, 145 ) },;
{ 0.6, nRGB( 24, 61, 118 ), nRGB( 50, 95, 158 ) } }
DEFINE DIALOG oDlg TITLE "FWH2603: Test Say With FW_SetUnicode( .T. )" ;
SIZE 600, 400 PIXEL BRUSH oBrush TRANSPARENT
oDlg:lHelpIcon := .F.
@ 25,15 SAY oSay PROMPT OemToAnsi( "SET UNICODE COM @COD, FUNCIONA" ) OF oDlg SIZE 150, 14 COLOR CLR_WHITE ;
PIXEL TRANSPARENT ADJUST UPDATE
@ 50,15 SAY oSay2 VAR TRAB OF oDlg SIZE 50, 14 COLOR CLR_WHITE ;
PIXEL TRANSPARENT ADJUST UPDATE
@ 10, 120 button "Test" pixel action oSay:SetText( "Change Text")
ACTIVATE DIALOG oDlg CENTERED
release brush oBrush
RETURN NIL
FUNCTION Test_Say_Res()
LOCAL oDlgVar, oFnt, oFont, IDCor, aGet := Array( 5 ), oSaida2, ;
TRAB, oIco, oBtnPesq, aGrad, oFiveWin, cPrompt
LOCAL _cExe := "OutLook.exe", _nKill := 2, lOk, oHand, oFiveWi1, oGroup
NFINICIAL := "245111"
NFFINAL := "245115"
aGrad := { { .50, nRGB( 210, 235, 216 ), nRGB( 255, 255, 255 ) } } // Gostei
// NAO FUNCIONA COM RECURSOS(WORKSHOP.exe) ??????
TRAB := OemToAnsi( "PESQUISAR AS NOTAS FISCAIS ELETRâNICAS, PARA ENVIAR EMAILS - LEIA AS INSTRU€åES" )
DEFINE CURSOR oHand RESOURCE "Dedo"
DEFINE ICON oIco NAME "ICONE"
DEFINE FONT oFnt NAME "Ms Sans Serif" SIZE 00, 14 BOLD
DEFINE FONT oFont NAME "Ms Sans Serif" SIZE 00, - 14 BOLD
DEFINE DIALOG oDlgVar RESOURCE "DLG_PESQUISA_NOTAS_VARIOS_MAILCORP" ;
GRADIENT aGrad ICON oIco
oDlgVar:lHelpIcon := .F.
FOR IDCor = 401 TO 404 // Os ID's dos TEXTOS na DIALOG.
REDEFINE SAY ID IDCor OF oDlgVar COLORS CLR_HBLUE, CLR_WHITE UPDATE FONT oFont TRANSPARENT
NEXT IDCor
FOR IDCor = 409 TO 409 // Os ID's dos TEXTOS na DIALOG.
REDEFINE SAY ID IDCor OF oDlgVar COLORS CLR_BLACK, CLR_WHITE UPDATE FONT oFnt TRANSPARENT
NEXT IDCor
FOR IDCor = 410 TO 411 // Os ID's dos TEXTOS na DIALOG.
REDEFINE SAY ID IDCor OF oDlgVar COLORS METRO_ORANGE, CLR_WHITE UPDATE FONT oFnt TRANSPARENT
NEXT IDCor
REDEFINE GROUP oGroup ID 501 OF oDlgVar FONT oFnt TRANSPARENT COLOR METRO_ORANGE // UPDATE
// Set( 29, ! Set( 29 ) )
IF Set( _SET_INSERT, ! Set( _SET_INSERT ) )
Set( _SET_INSERT, ! Set( _SET_INSERT ) )
ENDIF
REDEFINE GET aGet[ 1 ] VAR NFINICIAL ID 20 PICTURE "@K 999999" OF oDlgVar ;
UPDATE FONT oFont COLORS CLR_BLACK, CLR_WHITE
aGet[ 1 ]:cTooltip := { "Nota Fiscal Inicial Para Enviar o(s) Email(s).", ;
"Nota Fiscal Inicial Para Enviar o(s) Email(s)..", 1, CLR_WHITE, CLR_HBLUE }
REDEFINE GET aGet[ 2 ] VAR NFFINAL ID 21 PICTURE "@K 999999" OF oDlgVar ;
UPDATE FONT oFont COLORS CLR_BLACK, CLR_WHITE
aGet[ 2 ]:cTooltip := { "Nota Fiscal Final Para Enviar o(s) Email(s).", ;
"Nota Fiscal Final Para Enviar o(s) Email(s).", 1, CLR_WHITE, CLR_HBLUE }
// MAESTRO ANTONIO, AQUI: NO FUNCIONA CON SETUNICODE( .T. ) CON .F. FUNCIONA.
REDEFINE GET aGet[ 5 ] VAR TRAB ID 30 PICTURE "@K!" OF oDlgVar ;
UPDATE FONT oFnt COLORS CLR_YELLOW, CLR_BLACK WHEN( .F. )
REDEFINE BUTTONBMP oSaida2 ID 303 OF oDlgVar ACTION( oDlgVar:End() ) CANCEL
oSaida2:cToolTip := OemToAnsi( "Saida - Exit - Cancelar" )
SET FONT OF oSaida2 TO oFont
ACTIVATE DIALOG oDlgVar CENTERED
IF Set( _SET_INSERT, ! Set( _SET_INSERT ) )
Set( _SET_INSERT, ! Set( _SET_INSERT ) )
ENDIF
oFnt:End()
oFont:End()
RETURN NIL
// FIN / END - kapiabafwh@gmail.comRegards, saludos.
// C:\FWH2603\SAMPLES\TESTSAY4.RC
/****************************************************************************
TESTSAY4.rc
produced by Borland Resource Workshop
*****************************************************************************/
DLG_PESQUISA_NOTAS_VARIOS_MAILCORP DIALOG 235, 65, 500, 170
STYLE DS_ABSALIGN | DS_MODALFRAME | 0x4L | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "PLENOIND: NF-e - Pesquisa de Notas Fiscais Para Enviar Vários Emails - Escolha - Leia as Instruções Antes."
FONT 8, "MS Sans Serif"
{
EDITTEXT 20, 188, 44, 60, 12, ES_CENTER | ES_MULTILINE | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP
EDITTEXT 21, 394, 44, 60, 12, ES_CENTER | ES_MULTILINE | WS_CHILD | WS_VISIBLE | WS_BORDER | WS_TABSTOP
PUSHBUTTON "&Saida", 303, 220, 145, 60, 16
CONTROL "GET/TEXT", 30, "EDIT", ES_CENTER | ES_MULTILINE | WS_CHILD | WS_VISIBLE, 0, 3, 500, 12
RTEXT "Enviar Email da NF-e Inicial:", 401, 45, 44, 140, 12, SS_RIGHT | WS_CHILD | WS_VISIBLE
RTEXT "Até o Email da NF-e Final:", 402, 251, 44, 140, 12, SS_RIGHT | WS_CHILD | WS_VISIBLE
LTEXT "<ESC> - Sair", 409, 5, 145, 60, 12, SS_LEFT | WS_CHILD | WS_VISIBLE
GROUPBOX "Pesquisa: Notas Fiscais Para Enviar Emails - Escolha as Notas Para Enviar Vários Emails - Leia Instruções.", 501, 5, 27, 490, 40, BS_GROUPBOX | WS_CHILD | WS_VISIBLE
RTEXT "Passe o Mouse Sobre os Botões(Ajuda).", 411, 316, 70, 178, 12, SS_RIGHT | WS_CHILD | WS_VISIBLE
CTEXT "contato@pleno.com.br", 410, 75, 145, 138, 12, SS_CENTER | WS_CHILD | WS_VISIBLE
CTEXT "Obrigatório Que o Provedor de Emails, Esteja Configurado Corretamente(Testado).", 403, 10, 85, 480, 12, SS_CENTER | WS_CHILD | WS_VISIBLE
CTEXT "Atenção: Evite Colocar Mais de 500 Emails Por Vez Para Enviar.", 404, 0, 121, 410, 12, SS_CENTER | WS_CHILD | WS_VISIBLE
}Regards, saludos.
Maestro, Por cierto, lo siento: un GET que uso como si fuera un SAY con WHEN( .F. )
Regards, saludos.
Estimado Joao,
Tienes que guardar tu fichero RC con encoding CP1252 y quitar la llamada a OemToAnsi()
Antonio Linares wrote:Estimado Joao,
Tienes que guardar tu fichero RC con encoding CP1252 y quitar la llamada a OemToAnsi()
Maestro, sé que si escribo directamente en el editor BORLAND RESOURCE WORKSHOP.exe, no necesito OemToAnsi(). Soy de la vieja escuela y todavía me encanta mi editor en MODO CONSOLA. Jajajaja.
Maestro, ahora funcionando PERFECTO el OemToAnsi() modo consola con el nuevo build. Thank you very much!
// C:\FHW2603\SAMPLES\TESTSAY4.PRG y TESTSAY4.RC -> By Kapiaba. - Verssion: 03 con Nuevo FWH2603.
#include "FiveWin.ch"
#Define CLR_MENTA nRGB( 221, 255, 238 ) //-> Cor de Menta
#Define CLR_SOFTYELLOW nRGB( 255, 251, 225 ) //-> Amerelo Soft.
EXTERNAL HB_LANG_PT, HB_CODEPAGE_PTISO, HB_CODEPAGE_PT850
#ifNdef __XHARBOUR__ // HARBOUR
REQUEST HB_CODEPAGE_UTF8
REQUEST HB_CODEPAGE_UTF8EX
REQUEST HB_CODEPAGE_CP1252
#endif
REQUEST HB_LANG_ES
REQUEST HB_CODEPAGE_ESWIN
STATIC oWnd
MEMVAR NFINICIAL, NFFINAL
FUNCTION Main()
LOCAL oMenu
HB_LANGSELECT( 'PT' )
HB_SETCODEPAGE( "UTF8" )
HB_CDPSELECT( "UTF8EX" )
HB_SETCODEPAGE( "PT850" )
HB_CDPSELECT( "PTISO" )
HB_LangSelect( "ES" )
HB_CdpSelect( "ESWIN" )
HB_CDPSELECT( "CP1252" )
// TESTANDO A NOVA VERSAO.
// IF FWVERSION = "FWH 26.03"
// FW_SetUnicode( .T. ) // OemToAnsi() funciona con .T.
// ELSE // OTHER VERSIONS.
// FW_SetUnicode( .T. )
// ENDIF
FW_SetUnicode( .T. ) // OemToAnsi() funciona con .T.
SetGetColorFocus( CLR_MENTA )
tGet():lDisColors := .F.
tGet():nClrTextDis := CLR_HBLUE
tGet():nClrPaneDis := CLR_SOFTYELLOW
MENU oMenu 2007
MENUITEM "Test Say With Cod" ACTION( Test_Say_Cod() )
MENUITEM "Test Say With Res" ACTION( Test_Say_Res() ) // TESTSAY4.RC
MENUITEM "Exit" ACTION( oWnd:End() )
ENDMENU
DEFINE WINDOW oWnd TITLE "Test Say" from 0,0 to 400,800 pixel menu oMenu MDI
ACTIVATE WINDOW oWnd CENTERED
RETURN NIL
FUNCTION Test_Say_cod()
LOCAL oDlg, oSay, oBrush, oSay2, TRAB
TRAB := "PESQUISAR AS NOTAS FISCAIS ELETRÔNICAS, PARA ENVIAR EMAILS - LEIA AS INSTRUÇÕES"
DEFINE BRUSH oBrush GRADIENT { { 0.4, nRGB( 75, 144, 223 ), nRGB( 41, 85, 145 ) },;
{ 0.6, nRGB( 24, 61, 118 ), nRGB( 50, 95, 158 ) } }
DEFINE DIALOG oDlg TITLE "FWH2603: Test Say With FW_SetUnicode( .T. )" ;
SIZE 600, 400 PIXEL BRUSH oBrush TRANSPARENT
oDlg:lHelpIcon := .F.
@ 25,15 SAY oSay PROMPT OemToAnsi( "SET UNICODE COM @COD, FUNCIONA" ) OF oDlg SIZE 150, 14 COLOR CLR_WHITE ;
PIXEL TRANSPARENT ADJUST UPDATE
@ 50,15 SAY oSay2 VAR TRAB OF oDlg SIZE 50, 14 COLOR CLR_WHITE ;
PIXEL TRANSPARENT ADJUST UPDATE
@ 10, 120 button "Test" pixel action oSay:SetText( "Change Text")
ACTIVATE DIALOG oDlg CENTERED
release brush oBrush
RETURN NIL
FUNCTION Test_Say_Res()
LOCAL oDlgVar, oFnt, oFont, IDCor, aGet := Array( 5 ), oSaida2, ;
TRAB, oIco, oBtnPesq, aGrad, oFiveWin, cPrompt
LOCAL _cExe := "OutLook.exe", _nKill := 2, lOk, oHand, oFiveWi1, oGroup
NFINICIAL := "245111"
NFFINAL := "245115"
aGrad := { { .50, nRGB( 210, 235, 216 ), nRGB( 255, 255, 255 ) } } // Gostei
// NAO FUNCIONA COM RECURSOS(WORKSHOP.exe) ??????
// IF FWVERSION = "FWH 26.03" // SETUNICODE( .F. )
// TRAB := "PESQUISAR AS NOTAS FISCAIS ELETRÔNICAS, PARA ENVIAR EMAILS - LEIA AS INSTRUÇÕES"
// ELSE // OTHER VERSIONS. EDITOR MODO CONSOLA.
// TRAB := OemToAnsi( "PESQUISAR AS NOTAS FISCAIS ELETRâNICAS, PARA ENVIAR EMAILS - LEIA AS INSTRU€åES 2" )
// ENDIF
// Con el nuevo build de FWH, esta funcionando PERFECTO como antes.
TRAB := OemToAnsi( "PESQUISAR AS NOTAS FISCAIS ELETRâNICAS, PARA ENVIAR EMAILS - LEIA AS INSTRU€åES 3" )
DEFINE CURSOR oHand RESOURCE "Dedo"
DEFINE ICON oIco NAME "ICONE"
DEFINE FONT oFnt NAME "Ms Sans Serif" SIZE 00, 14 BOLD
DEFINE FONT oFont NAME "Ms Sans Serif" SIZE 00, - 14 BOLD
DEFINE DIALOG oDlgVar RESOURCE "DLG_PESQUISA_NOTAS_VARIOS_MAILCORP" ;
GRADIENT aGrad ICON oIco
oDlgVar:lHelpIcon := .F.
FOR IDCor = 401 TO 404 // Os ID's dos TEXTOS na DIALOG.
REDEFINE SAY ID IDCor OF oDlgVar COLORS CLR_HBLUE, CLR_WHITE UPDATE FONT oFont TRANSPARENT
NEXT IDCor
FOR IDCor = 409 TO 409 // Os ID's dos TEXTOS na DIALOG.
REDEFINE SAY ID IDCor OF oDlgVar COLORS CLR_BLACK, CLR_WHITE UPDATE FONT oFnt TRANSPARENT
NEXT IDCor
FOR IDCor = 410 TO 411 // Os ID's dos TEXTOS na DIALOG.
REDEFINE SAY ID IDCor OF oDlgVar COLORS METRO_ORANGE, CLR_WHITE UPDATE FONT oFnt TRANSPARENT
NEXT IDCor
REDEFINE GROUP oGroup ID 501 OF oDlgVar FONT oFnt TRANSPARENT COLOR METRO_ORANGE // UPDATE
// Set( 29, ! Set( 29 ) )
IF Set( _SET_INSERT, ! Set( _SET_INSERT ) )
Set( _SET_INSERT, ! Set( _SET_INSERT ) )
ENDIF
REDEFINE GET aGet[ 1 ] VAR NFINICIAL ID 20 PICTURE "@K 999999" OF oDlgVar ;
UPDATE FONT oFont COLORS CLR_BLACK, CLR_WHITE
aGet[ 1 ]:cTooltip := { "Nota Fiscal Inicial Para Enviar o(s) Email(s).", ;
"Nota Fiscal Inicial Para Enviar o(s) Email(s)..", 1, CLR_WHITE, CLR_HBLUE }
REDEFINE GET aGet[ 2 ] VAR NFFINAL ID 21 PICTURE "@K 999999" OF oDlgVar ;
UPDATE FONT oFont COLORS CLR_BLACK, CLR_WHITE
aGet[ 2 ]:cTooltip := { "Nota Fiscal Final Para Enviar o(s) Email(s).", ;
"Nota Fiscal Final Para Enviar o(s) Email(s).", 1, CLR_WHITE, CLR_HBLUE }
// MAESTRO ANTONIO, AQUI: NO FUNCIONA CON SETUNICODE( .T. ) CON .F. FUNCIONA.
REDEFINE GET aGet[ 5 ] VAR TRAB ID 30 PICTURE "@K!" OF oDlgVar ;
UPDATE FONT oFnt COLORS CLR_YELLOW, CLR_BLACK WHEN( .F. )
REDEFINE BUTTONBMP oSaida2 ID 303 OF oDlgVar ACTION( oDlgVar:End() ) CANCEL
oSaida2:cToolTip := OemToAnsi( "Saida - Exit - Cancelar" )
SET FONT OF oSaida2 TO oFont
ACTIVATE DIALOG oDlgVar CENTERED
IF Set( _SET_INSERT, ! Set( _SET_INSERT ) )
Set( _SET_INSERT, ! Set( _SET_INSERT ) )
ENDIF
oFnt:End()
oFont:End()
RETURN NIL
// FIN / END - kapiabafwh@gmail.comRegards, saludos.
Master, FWSALES.PRG
// static cDbf := "fwsales.dbf" // dbf name with relative or absolute path -> no ejiste!
static cDbf := "sales.dbf" // dbf name with relative or absolute pathApplication
===========
Path and name: C:\FWH2603\samples\fwsales.exe (32 bits)
Size: 5,031,936 bytes
Compiler version: xHarbour 1.3.2 Intl. (SimpLex) (Build 20260103)
FiveWin version: FWH 26.03
C compiler version: Borland/Embarcadero C++ 7.7 (32-bit)
Windows 11 64 Bits, version: 6.2, Build 9200
Time from start: 49 sec
Error occurred at: 24/04/2026, 10:13:15
Error description: Error BASE/1004 Class: 'NIL' has no exported method: CLOSE
Args:
[ 1] = U
Stack Calls
===========
Called from: => CLOSE( 0 )
Called from: fwsales.prg => BLANKVALUES( 158 )
Called from: fwsales.prg => (b)MENUERRORS( 117 )
Called from: source\classes\menu.prg => TMENU:ACTIVATE( 1870 )
Called from: source\classes\btnbmp.prg => TBTNBMP:LBUTTONUP( 1097 )
Called from: source\classes\control.prg => TCONTROL:HANDLEEVENT( 1896 )
Called from: source\classes\btnbmp.prg => TBTNBMP:HANDLEEVENT( 2150 )
Called from: source\classes\window.prg => _FWH( 1076 )
Called from: => WINRUN( 0 )
Called from: source\classes\window.prg => TWINDOW:ACTIVATE( 1205 )
Called from: fwsales.prg => BROWSEDBF( 82 )
Called from: fwsales.prg => MAIN( 21 )Regards, saludos.
Master, DSHOW.PRG
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³ FiveWin for xHarbour 26.03 - Mar. 2026 Harbour development power ³Ü
³ (c) FiveTech 1993-2026 for Microsoft Windows 9X/NT/200X/ME/XP/Vista/7/8/10 ³Û
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙÛ
ÿ ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß
Compiling...
xHarbour 1.3.2 Intl. (SimpLex) (Build 20260103)
Copyright 1999-2026, http://www.xharbour.org http://www.harbour-project.org/
Compiling 'DSHOW.prg' and generating preprocessed output to 'DSHOW.ppo'...
Generating C source output to 'DSHOW.c'...
Done.
Lines 39, Functions/Procedures 2, pCodes 158
Embarcadero C++ 7.70 for Win32 Copyright (c) 1993-2023 Embarcadero Technologies, Inc.
DSHOW.c:
Warning W8013 c:\bcc77\bin\..\include\windows\sdk\strsafe.h 2911: Possible use of 'cchDestLength' before definition in function StringCchCatExA
Warning W8013 c:\bcc77\bin\..\include\windows\sdk\strsafe.h 3022: Possible use of 'cchDestLength' before definition in function StringCchCatExW
Warning W8013 c:\bcc77\bin\..\include\windows\sdk\strsafe.h 3247: Possible use of 'cchDestLength' before definition in function StringCbCatExA
Warning W8013 c:\bcc77\bin\..\include\windows\sdk\strsafe.h 3355: Possible use of 'cchDestLength' before definition in function StringCbCatExW
Warning W8013 c:\bcc77\bin\..\include\windows\sdk\strsafe.h 3893: Possible use of 'cchDestLength' before definition in function StringCchCatNExA
Warning W8013 c:\bcc77\bin\..\include\windows\sdk\strsafe.h 4005: Possible use of 'cchDestLength' before definition in function StringCchCatNExW
Warning W8013 c:\bcc77\bin\..\include\windows\sdk\strsafe.h 4234: Possible use of 'cchDestLength' before definition in function StringCbCatNExA
Warning W8013 c:\bcc77\bin\..\include\windows\sdk\strsafe.h 4347: Possible use of 'cchDestLength' before definition in function StringCbCatNExW
Warning W8005 c:\bcc77\bin\..\include\windows\sdk\strmif.h 22024: Bit fields must be signed or unsigned int
Warning W8005 c:\bcc77\bin\..\include\windows\sdk\strmif.h 22025: Bit fields must be signed or unsigned int
Warning W8005 c:\bcc77\bin\..\include\windows\sdk\strmif.h 22027: Bit fields must be signed or unsigned int
Warning W8005 c:\bcc77\bin\..\include\windows\sdk\strmif.h 22028: Bit fields must be signed or unsigned int
Warning W8005 c:\bcc77\bin\..\include\windows\sdk\strmif.h 22030: Bit fields must be signed or unsigned int
Warning W8005 c:\bcc77\bin\..\include\windows\sdk\strmif.h 22031: Bit fields must be signed or unsigned int
Warning W8005 c:\bcc77\bin\..\include\windows\sdk\strmif.h 22033: Bit fields must be signed or unsigned int
Warning W8005 c:\bcc77\bin\..\include\windows\sdk\strmif.h 22034: Bit fields must be signed or unsigned int
Warning W8005 c:\bcc77\bin\..\include\windows\sdk\strmif.h 22036: Bit fields must be signed or unsigned int
Warning W8137 DSHOW.prg 48: Deprecated #import directive encountered. Please use the TLIBIMP utility instead.
Error E2503 DSHOW.prg 48: Missing or incorrect version of TypeLibImport.dll
Error E2451 DSHOW.prg 56: Undefined symbol 'Run' in function HB_FUN_DSHOWPLAY
Warning W8004 DSHOW.prg 57: 'pMediaControl' is assigned a value that is never used in function HB_FUN_DSHOWPLAY
Error E2451 DSHOW.prg 63: Undefined symbol 'Stop' in function HB_FUN_DSHOWSTOP
Warning W8004 DSHOW.prg 64: 'pMediaControl' is assigned a value that is never used in function HB_FUN_DSHOWSTOP
Error E2451 DSHOW.prg 85: Undefined symbol 'DexterLib' in function HB_FUN_DSHOWCAMERA
Error E2379 DSHOW.prg 85: Statement missing ; in function HB_FUN_DSHOWCAMERA
Error E2342 DSHOW.prg 96: Type mismatch in parameter 'rclsid' (wanted 'const _GUID * const', got '_GUID') in function HB_FUN_DSHOWCAMERA
Error E2342 DSHOW.prg 103: Type mismatch in parameter 'rclsid' (wanted 'const _GUID * const', got '_GUID') in function HB_FUN_DSHOWCAMERA
Error E2451 DSHOW.prg 108: Undefined symbol 'SetFiltergraph' in function HB_FUN_DSHOWCAMERA
Warning W8045 DSHOW.prg 114: No declaration for function 'IID_PPV_ARGS' in function HB_FUN_DSHOWCAMERA
Error E2342 DSHOW.prg 114: Type mismatch in parameter 'rclsid' (wanted 'const _GUID * const', got '_GUID') in function HB_FUN_DSHOWCAMERA
Error E2193 DSHOW.prg 114: Too few parameters in call to 'CoCreateInstance' in function HB_FUN_DSHOWCAMERA
Error E2451 DSHOW.prg 119: Undefined symbol 'CreateClassEnumerator' in function HB_FUN_DSHOWCAMERA
Error E2451 DSHOW.prg 128: Undefined symbol 'Next' in function HB_FUN_DSHOWCAMERA
Error E2451 DSHOW.prg 138: Undefined symbol 'BindToStorage' in function HB_FUN_DSHOWCAMERA
Error E2451 DSHOW.prg 143: Undefined symbol 'Read' in function HB_FUN_DSHOWCAMERA
Error E2451 DSHOW.prg 146: Undefined symbol 'bstrVal' in function HB_FUN_DSHOWCAMERA
Error E2451 DSHOW.prg 148: Undefined symbol 'Release' in function HB_FUN_DSHOWCAMERA
Error E2451 DSHOW.prg 166: Undefined symbol 'BindToStorage' in function HB_FUN_DSHOWCAMERA
Error E2451 DSHOW.prg 168: Undefined symbol 'Read' in function HB_FUN_DSHOWCAMERA
Error E2451 DSHOW.prg 173: Undefined symbol 'BindToObject' in function HB_FUN_DSHOWCAMERA
Error E2451 DSHOW.prg 180: Undefined symbol 'AddFilter' in function HB_FUN_DSHOWCAMERA
Error E2342 DSHOW.prg 188: Type mismatch in parameter 'rclsid' (wanted 'const _GUID * const', got '_GUID') in function HB_FUN_DSHOWCAMERA
Error E2451 DSHOW.prg 194: Undefined symbol 'QueryInterface' in function HB_FUN_DSHOWCAMERA
Error E2121 DSHOW.prg 195: Function call missing ) in function HB_FUN_DSHOWCAMERA
Error E2451 DSHOW.prg 201: Undefined symbol 'pSampleGrabber' in function HB_FUN_DSHOWCAMERA
Error E2140 DSHOW.prg 207: Declaration is not allowed here in function HB_FUN_DSHOWCAMERA
Error E2293 DSHOW.prg 211: ) expected in function HB_FUN_DSHOWCAMERA
Error E2451 DSHOW.prg 217: Undefined symbol 'AddFilter' in function HB_FUN_DSHOWCAMERA
Error E2342 DSHOW.prg 225: Type mismatch in parameter 'rclsid' (wanted 'const _GUID * const', got '_GUID') in function HB_FUN_DSHOWCAMERA
Error E2451 DSHOW.prg 231: Undefined symbol 'AddFilter' in function HB_FUN_DSHOWCAMERA
Error E2451 DSHOW.prg 237: Undefined symbol 'RenderStream' in function HB_FUN_DSHOWCAMERA
Error E2451 DSHOW.prg 244: Undefined symbol 'RenderStream' in function HB_FUN_DSHOWCAMERA
Error E2451 DSHOW.prg 252: Undefined symbol 'QueryInterface' in function HB_FUN_DSHOWCAMERA
Error E2451 DSHOW.prg 261: Undefined symbol 'Run' in function HB_FUN_DSHOWCAMERA
Error E2451 DSHOW.prg 273: Undefined symbol 'HB_LONGLONG' in function HB_FUN_DSHOWCAMERA
Error E2293 DSHOW.prg 273: ) expected in function HB_FUN_DSHOWCAMERA
Warning W8004 DSHOW.prg 274: 'pBuffer' is assigned a value that is never used in function HB_FUN_DSHOWCAMERA
Warning W8004 DSHOW.prg 274: 'pMediaControl' is assigned a value that is never used in function HB_FUN_DSHOWCAMERA
Warning W8004 DSHOW.prg 274: 'pCap' is assigned a value that is never used in function HB_FUN_DSHOWCAMERA
Warning W8004 DSHOW.prg 274: 'pPropBag' is assigned a value that is never used in function HB_FUN_DSHOWCAMERA
Warning W8004 DSHOW.prg 274: 'pMoniker' is assigned a value that is never used in function HB_FUN_DSHOWCAMERA
Warning W8004 DSHOW.prg 274: 'pEnum' is assigned a value that is never used in function HB_FUN_DSHOWCAMERA
Warning W8004 DSHOW.prg 274: 'pDevEnum' is assigned a value that is never used in function HB_FUN_DSHOWCAMERA
*** 35 errors in Compile ***
* Linking errors *Regards, saludos.
Master, HOTKEY.PRG
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³ FiveWin for xHarbour 26.03 - Mar. 2026 Harbour development power ³Ü
³ (c) FiveTech 1993-2026 for Microsoft Windows 9X/NT/200X/ME/XP/Vista/7/8/10 ³Û
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙÛ
ÿ ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß
Compiling...
xHarbour 1.3.2 Intl. (SimpLex) (Build 20260103)
Copyright 1999-2026, http://www.xharbour.org http://www.harbour-project.org/
Compiling 'hotkey.prg' and generating preprocessed output to 'hotkey.ppo'...
Generating C source output to 'hotkey.c'...
Done.
Lines 75, Functions/Procedures 3, pCodes 1101
Embarcadero C++ 7.70 for Win32 Copyright (c) 1993-2023 Embarcadero Technologies, Inc.
hotkey.c:
Turbo Incremental Link 6.97 Copyright (c) 1997-2022 Embarcadero Technologies, Inc.
Error: Unresolved external '_HB_FUN_HB_BAND' referenced from C:\FWH2603\LIB\FIVEHX.LIB|thotkey
Error: Unable to perform link
* Linking errors *Regards, saludos.