Bug #4953


SaxonCGlue - C/C++ UNICODE Interop - add doc somewhere

Added by Manfred Wallner over 3 years ago. Updated over 3 years ago.

Start date:
Due date:
% Done:


Estimated time:
Applies to branch:
Fix Committed on Branch:
Fixed in Maintenance Release:
Found in version:
Fixed in version:
SaxonC Languages:
SaxonC Platforms:
SaxonC Architecture:


In order to be able to use Saxon/C from a Win32 / x64 UNICODE binary, one needs to explicitly undef / remove the UNICODE and _UNICODE macro when compiling. (Otherwise the libsaxonhec.dll just won't load w/o error because the path get's scrambled up)

Without setting this, the user would get an error like

Unable to load C:\Program Files\Saxonica\SaxonHEC1.2.1\libsaxonhec.dll
Error: : No error

(just because the Path C:\Program Files\Saxonica\SaxonHEC1.2.1\libsaxonhec.dll would be wiedened to unicode, which is garbage in the SaxonCGlue.c / loadDll)


clipboard-202103301354-yh3fh.png (93.2 KB) clipboard-202103301354-yh3fh.png Manfred Wallner, 2021-03-30 13:54

Related issues

Is duplicate of SaxonC - Bug #4707: Library libsaxonhec.dll is not present in the system (Windows)ClosedO'Neil Delpratt2020-09-02

Actions #1

Updated by Michael Kay over 3 years ago

  • Project changed from Saxon to SaxonC
Actions #2

Updated by Manfred Wallner over 3 years ago

Note: SaxonCGlue.c should probably use LoadLibraryA instead of LoadLibrary, as it also explicitly uses const char*

Actions #3

Updated by O'Neil Delpratt over 3 years ago

  • Is duplicate of Bug #4707: Library libsaxonhec.dll is not present in the system (Windows) added
Actions #4

Updated by O'Neil Delpratt over 3 years ago

  • Tracker changed from Support to Bug
  • Status changed from New to Duplicate

Hi, Yes you are correct in your suggested fix.

I am marking this bug issue as a duplicate to the fix that has already been made in the issue #4707.

The work around is to apply this fix to your local copy of Saxon/C 1.2.1.

Please register to edit this issue

Also available in: Atom PDF