FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Llamar Archivo .HRB desde un .PRG
Posts: 1276
Joined: Tue Dec 28, 2010 01:29 PM
Llamar Archivo .HRB desde un .PRG
Posted: Fri Aug 26, 2011 10:36 PM
Buenas tardes,

Estoy llamando una funcion creada en un archivo .HRB y este es el codigo que estoy utilizando dese un MAIN.PRG desede un boton

DEFINE BUTTON ::oBtn OF ::oBar;
TOOLTIP "Bancos" MESSAGE "Bancos" NOBORDER ADJUST;
ACTION (hb_hrbrun( "test.hrb" ))

La intencion es ejecutar un mensaje que ya fue compilado en un archivo test.hrb pero me esta arrojando el siguiente error

echo C:\xharbour\lib\macro.lib + >> b32.bc
echo C:\xharbour\lib\rdd.lib + >> b32.bc
echo C:\xharbour\lib\dbfntx.lib + >> b32.bc
echo C:\xharbour\lib\dbfcdx.lib + >> b32.bc
echo C:\xharbour\lib\dbffpt.lib + >> b32.bc
echo C:\xharbour\lib\hbsix.lib + >> b32.bc
echo C:\xharbour\lib\debug.lib + >> b32.bc
echo C:\xharbour\lib\common.lib + >> b32.bc
echo C:\xharbour\lib\pp.lib + >> b32.bc
echo C:\xharbour\lib\pcrepos.lib + >> b32.bc
echo C:\xharbour\lib\codepage.lib + >> b32.bc
echo C:\xharbour\lib\ct.lib + >> b32.bc
echo C:\bcc582\lib\cw32.lib + >> b32.bc
echo C:\bcc582\lib\import32.lib + >> b32.bc
IF EXIST main.res echo main.res >> b32.bc
C:\bcc582\bin\ilink32 -Gn -aa -Tpe -s -v @b32.bc
Turbo Incremental Link 5.69 Copyright (c) 1997-2005 Borland
Error: Unresolved external '_HB_FUN_HB_HRBRUN' referenced from C:\MX\OBJ\MAIN.OBJ

** error 2 ** deleting main.exe

C:\MX>

Por favor, explicame lo que estoy haciendo mal

Agradeciendo de antemano

FWH 25.12

Harbour/Hbmk2

Microsoft Visual C++

MySql 8.0

Antigravity

Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: Llamar Archivo .HRB desde un .PRG
Posted: Sat Aug 27, 2011 06:18 PM
regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 1276
Joined: Tue Dec 28, 2010 01:29 PM
Re: Llamar Archivo .HRB desde un .PRG
Posted: Tue Aug 30, 2011 03:52 PM

Gracias Antonio,

Este es el codigo que estoy usando

include "fivewin.ch"

FUNCTION Main()
LOCAL ohrb
msginfo( "Hola" )
ohrb := hb_compilebuf( hb_argv(0), "tutor01.prg", "-n")
hb_hrbrun( ohrb)
msginfo( "Adios")
RETURN NIL

Pero al ejecutar me sale este error

Application

Path and name: C:\FWH\samples\testhrb.exe (32 bits)
Size: 1,965,568 bytes
Time from start: 0 hours 0 mins 1 secs
Error occurred at: 08/30/11, 11:21:17
Error description: Error BASE/6103 Argument error: HB_HRBRUN
Args:
[ 1] = U

Stack Calls

Called from: => HB_HRBRUN(0)
Called from: testhrb.prg => MAIN(6)

System

CPU type: Intel(R) Pentium(R) D CPU 3.40GHz 3400 Mhz
Hardware memory: 1014 megs

Free System resources: 90 %
GDI resources: 90 %
User resources: 90 %

Compiler version: Harbour 2.1.0beta1 (Rev. 14559)

Sera algo malo en la sintaxis del .PRG?

FWH 25.12

Harbour/Hbmk2

Microsoft Visual C++

MySql 8.0

Antigravity

Posts: 1276
Joined: Tue Dec 28, 2010 01:29 PM
Re: Llamar Archivo .HRB desde un .PRG
Posted: Tue Aug 30, 2011 06:23 PM

Hice esta otra prueba y tambien me arroja error

include "fivewin.ch"

FUNCTION Main()
LOCAL oHrb
msginfo("Hola")
HB_Compile( "", "tutor01.prg", "/n", "/gh" )

 oHrb = HB_HRBLOAD( "tutor01.hrb" )

 HB_HRBDO( oHrb )

 HB_HRBUNLOAD( oHrb )

 FERASE( "tutor01.hrb" )

RETURN NIL

Application

Path and name: C:\FWH\samples\testhrb.exe (32 bits)
Size: 1,965,568 bytes
Time from start: 0 hours 0 mins 2 secs
Error occurred at: 08/30/11, 13:49:43
Error description: (DOS Error 2) BASE/6102 Open error: tutor01.hrb
Args:
[ 1] = C tutor01.hrb

Stack Calls

Called from: => HB_HRBLOAD(0)
Called from: testhrb.prg => MAIN(9)

Por que no permite crear el archivo .HRB? Sera problema de version () ????

Compiler version: Harbour 2.1.0beta1 (Rev. 14559)

FWH 25.12

Harbour/Hbmk2

Microsoft Visual C++

MySql 8.0

Antigravity

Posts: 1283
Joined: Fri Feb 10, 2006 02:34 PM
Re: Llamar Archivo .HRB desde un .PRG
Posted: Wed Aug 31, 2011 06:46 AM
Hola,

Es codigo lo he probado y funciona.

Code (fw): Select all Collapse
#include "fivewin.ch"

FUNCTION Main()

   LOCAL oHrb

   HB_Compile( "", "tutor01.prg", "/n", "/gh" )

   oHrb = HB_HRBLOAD( "tutor01.hrb" )

   HB_HRBDO( oHrb )

   HB_HRBUNLOAD( oHrb )

RETU NIL


Y tutor01.prg es

Code (fw): Select all Collapse
#include 'fivewin.ch'

FUNCTION Test()

   MsgInfo( 'Hi Hrb...' )

RETU NIL


Compilado con Harbour 2.1.0beta1 (Rev. 14559)
Salutacions, saludos, regards

"...programar es fácil, hacer programas es difícil..."

UT Page -> https://carles9000.github.io/
Forum UT -> https://discord.gg/bq8a9yGMWh
HIX -> https://github.com/carles9000/hix
Posts: 1303
Joined: Tue Jul 21, 2009 08:12 AM
Re: Llamar Archivo .HRB desde un .PRG
Posted: Wed Aug 31, 2011 10:06 AM
Hola:

Añade en el principal

Code (fw): Select all Collapse
#include "hbextern.ch"



Y en tutor01.prg quita el include y nos comentas.

Salu2
Muchas gracias. Many thanks.



Un saludo, Best regards,



Harbour 3.2.0dev, Borland C++ 5.82 y FWH 13.06 [producción]



Implementando MSVC 2010, FWH64 y ADO.



Abandonando uso xHarbour y SQLRDD.
Posts: 1276
Joined: Tue Dec 28, 2010 01:29 PM
Re: Llamar Archivo .HRB desde un .PRG
Posted: Wed Aug 31, 2011 10:08 AM

Saludos

Lo porbare

FWH 25.12

Harbour/Hbmk2

Microsoft Visual C++

MySql 8.0

Antigravity

Continue the discussion