This definitely makes sense, I think I will change to that method. Do you use WINAPI (= FAR PASCAL) for your functions, though?

The changes between 16-bit and 32-bit accounts for why code suddenly won't work when ported. Thanks, Microsoft, for detailing that in a way that human beings can find.

One final question: How should the function be listed under EXPORTS? Can you give me an example of a DEF file with EXPORTS so that I can see? I only started using _export in 16-bit because I didn't understand what I was supposed to write in the DEF file!

Thanks for your help.