I am trying to put an existing piece of RFC client (written for Windows) code written in C++ (using the RFC SDK) on a unicode basis by turning on the "SAPwithUNICODE" compiler switch. The RFC client compiles and links correctly; however when the RfcOpenEx API function is called the entire process terminates unexpectedly with return code 0xFFFFFFFF as I was able to observer with the C++ debugger. I have also verified that all the parameters in this call have the proper data types and lengths, so nothing should be wrong here; the debugger also tells me that the library librfc32u.dll is loaded instead of librfc32.dll as would be the case for non-unicode clients.
Anyone has an idea what is going on here? Advises greatly appreciated!!
I was never able to get any C++ interface questions answered. Nor was I able to get a C++ implementation of my program to run. I did get a C version (Unicode)to run. One thing you need to be very careful about is using mallocU, callocU, memsetU, memcpyU, etc. I found that if I tried to use a regular malloc, callor or realloc statement when allocating an rfc_char_t or any other Unicode data type, I got very unexpected results. Hope that helps!
Hi. I was wondering if you ever got any resolution for this question. I am also using the Unicode version of the SDK, and these "unicode" probelms keep coming up. One issue I'm having now is that If I connect and then disconnect and then try to re-connect, my program always crashes in RfcOpenEx. Just thought your solution could give me some insight. Thanks!