Creating and using a Harbour pcode DLL

Post Reply
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Creating and using a Harbour pcode DLL

Post by Antonio Linares »

go.bat

Code: Select all

set HB_COMPILER=bcc
set path=c:\bcc582\bin
c:\harbour\bin\hbmk2 test1.prg
c:\harbour\bin\hbmk2 -hbdyn -lhbmaindllp pcode.prg
 
test1.prg

Code: Select all

function Main()

   local hDLL := hb_LibLoad( "pcode.dll" )

   Do( "Another" )
   Alert( "From the EXE" )
   
   hb_LibFree( hDLL )

return nil

#pragma BEGINDUMP

#include "hbapi.h"

HB_EXPORT_ATTR PHB_FUNC dll_hb_vmProcAddress( const char * szFuncName )
{
   return hb_vmProcAddress( szFuncName );
}

#pragma ENDDUMP  
 
pcode.prg

Code: Select all

DYNAMIC Alert

function Another()

   Alert( "Inside the DLL" )

return nil
 
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: Creating and using a Harbour pcode DLL

Post by Antonio Linares »

To create a small EXE that just contains pcode and uses a Harbour DLL that contains the HVM (virtual machine and RTLs) do:

hbmk2 -shared test.prg

test.prg

Code: Select all

function Main()

   Alert( "Hello world" )

return nil
 
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Jimmy
Posts: 165
Joined: Thu Sep 05, 2019 5:32 am
Location: Hamburg, Germany

Re: Creating and using a Harbour pcode DLL

Post by Jimmy »

hi,

i have follow what you wrote and got DLL and a Console Window open ... but no ALERT() :cry:
please have a look if Code is still valid, thx

Question : can i access these DLL from Xbase++ :?:
greeting,
Jimmy
Post Reply