> i learned a few things from here: > > http://velthuis.homepage.t-online.de/articles/articles-pchars.html > http://www.ibphoenix.com/main.nfs?a=ibphoenix&page=ibp_howto5 >
I have seen Rudy's article too, and am reading the other website now, though. I'm at the point where I feel 100 percent confident using Pchars at this point and have started to write pages about pchars too. The mystery was why Trustmaster's website has been working for 2-3 years now (or so) using ansistrings - defying all the laws and warnings and hand wavings from people. Also, I wrote this a while back and update it with new info too: http://z505.com/cgi-bin/qkcont/qkcont.cgi?p=Clearing-Up-PChar-and-DLL-Confusion But it is overwhelming and mainly just notes for my own purposes, so some people might find it too verbose to wade through. With Cmem, and according to my current knowledge, Cmem should allow one to safely export strings from one Pascal program to another Pascal program (but only Pascal programs, or programs who have compatible reference counting - i.e. maybe Delphi). Even if trustmaster's website does work fine with exporting strings without any Cmem, it would be wiser to just use Cmem - as it doesn't really cost you anything, and ensures things should work better than they are now, even if there are no problems now. When considering a C program or library will interface in to the DLL, of course pchars will be needed - one cannot use ansistrings even with cmem. And I'm fine with that - since confident with pchars. I didn't know about cmem and glad Jonas mentioned it. I still have to test it out though, to make sure things work in real life like they do in theory, when having two pascal applications talk to each other via cmem using ansistrings. _______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal