I try to move my 32bit application to 64bit and first problem I found there is no DllCall() function in rtl.a ? (last binaries from xharbour.org)
(no problem with other functions in RTL library)
linker error is:
Turbo Incremental Link64 6.75 Copyright (c) 1997-2016 Embarcadero Technologies, Inc.
Error: Unresolved external 'HB_FUN_DLLCALL' referenced from ...
has anyone had a similar problem ?
Thanks for explanation,
I tried to compile dllcall.c from source but no success, bcc32 compiles it OK but bcc64 not, this file does not want to compile for 64bit - some errors in ASM inserts,
unfortunately I do not know assembler and C so well to solve these problems, my failure, maybe this file was removed from the RTL library because it is not converted to 64bit, who knows...
sorry I didn't reply sooner but I had a lot of other problems related to migrating to 64bit and left it for last, unfortunately your proposal does not replace dllcall() because shellexecute() is more for running EXE than for using functions from DLL.
Since I couldn't handle the asm inserts in dllcall.c I used the hb_dynCall function from Harbor -> hbdyn.c after adapting the missing functions from strapi.c and eliminating UTF16 support I now have the dllcall() function working
Sysop: | Keyop |
---|---|
Location: | Huddersfield, West Yorkshire, UK |
Users: | 296 |
Nodes: | 16 (2 / 14) |
Uptime: | 45:30:00 |
Calls: | 6,648 |
Files: | 12,197 |
Messages: | 5,329,774 |