> 2009-01-29 11:57 UTC-0430 Ron Pinkas <ron/at/xharbour.com>

Using statically linked xHarbour Dlls:

1.  Any application (Console or GUI) can be linked into a small EXE 
utilizing harbour.dll
     withOUT any code changes.

     How: link to use_dll.lib + harbour.lib (in that order) INSTEAD of all 
core libs (vm.lib rtl.lib ...)

2. Any xHarbour module can be compiled into a DLL which can be used withOUT 
any code
    changes, just as if it was a normal library.

    How:
          1. Add defines __IMPORT__ and __EXPORT__ to your C flags.
          2. Use Linker instead of Librarian to link into DLL and specify 
dllmain.lib + harbour.lib (in that order).
             Your linker will produce:
                your_module.dll
                your_module.lib

     Note: Using -n0 when compiling module sources to be linked as a DLL, is 
NO LONGER needed
               hb_vmProcessPrgDllSymbols() includes auto protection against 
using any such dll symbol
               as the startup symbol.

3. Any application (Console or GUI) can be linked into a small EXE utilizing 
harbour.dll
    as well as any number of additional DLLs modules produced as per 2 
above, withOUT
    any code changes.

     How: Link to your_module.lib + use_dll.lib + harbour.lib (in that 
order) INSTEAD of normal
     module lib and all core libs (vm.lib rtl.lib ...)

Build tools publishers should update their tools as per above.

Ron 


------------------------------------------------------------------------------
This SF.net email is sponsored by:
SourcForge Community
SourceForge wants to tell your story.
http://p.sf.net/sfu/sf-spreadtheword
_______________________________________________
xHarbour-developers mailing list
xHarbour-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/xharbour-developers

Reply via email to