[Progress Communities] [Progress OpenEdge ABL] Forum Post: RE: Modifications needed to use windows.i on 64-bit

Status
Not open for further replies.
F

frank.meulblok

Guest
Keep in mind though, if you try to handle this with preprocessors, you end up programs that you need to both compile and deploy under a specific bit-level. Get things wrong and stuff start to crash and burn because of truncated pointers, byte misalignment etc. Speaking of byte allignment, did you check where the API expects structs as input/you're getting structs returned as memptrs from the API, and adjust your code to follow 64-bit byte alligment rules in the 64-bit builds ? If you forgot that, stuff starts exploding too. As Stefan said, look at replacing your API calls with .NET-based equivalents first. Then you can let the .NET framework handle that 32-bit vs 64-bit interoperability, and you only need to worry about a a single bit-level independent build of your r-code. Also, issues you'll run into will be generally easier to troubleshoot because you'll get more meaningful errors instead of hard-to-trace hard crashes. And you'll get wide-character support as default. So you don't have to rewrite things again to use the W calls just because a customer wants to be able to, say, use an accented letter in a filename.

Continue reading...
 
Status
Not open for further replies.
Top