Hello Mr. Rao and everyone else;
Your information is valuable to me but this is a different situation.
I'm sorry I should have been more specific. I'm trying to return a c wchar_t variable type from a VM Harbour wrapper c function back to the calling Harbour (clipper) code.
- Code: Select all Expand view
HB_FUNC( OCRFROMFILEUSINGTRANSYM )
{
TOCRJOBINFO_EG JobInfo_EG;
TOCRRESULTSEX_EG* Results = 0;
long Status;
long JobNo = 0;
byte OptionsMask = HB_ISNUM( 3 ) ? hb_parnl( 3 ) : 0x00000000 ;
long Orientation = HB_ISNUM( 4 ) ? hb_parnl( 4 ) : TOCRJOBORIENT_AUTO;
long ErrorMode = HB_ISNUM( 5 ) ? hb_parnl( 5 ) : TOCRERRORMODE_LOG ;
HB_WCHAR Msg[10240]; //<==Wide string that I later want to return
char * InputFile = ( char * ) hb_parcx( 1 ); //parm 1 is input file
FILE* logfile ;
time_t currentTime;
char timeString[100];
...
hb_retc( Msg ) ; // <== this won't work as hb_retc only returns static char * types.
So either the VM has another way to return a wide string back to Harbour or I will have to convert that wide string but that is something I rather not do. On all my wrappers I had ignored wide strings. But now I realize I will have to fix that but wide strings a new to me.
Thank you.