Hello, I have a small piece of code on LCL which I have found hard to convert to unicode:
lpStrFilter := StrAlloc(Length(Filter)+1); StrPCopy(lpStrFilter, Filter); on win32wsdialogs.pp lpStrFilter is a member on the LPOPENFILENAME winapi structure. Having a win9x version is trivial, but having a version where we put a PWideChar into lpStrFilter looks hard... lpStrFilter := StrAlloc(Length(Filter)+1); StrPCopy(lpStrFilter, Utf8ToAnsi(Filter)); I tryed this as unicode version: lpStrFilter := PChar(PWideChar(Utf8Decode(Filter))); But it crashes the dialog when it is closed... I don't know what exactly is happening here, or why the original code manually alocated memory and then copyed the string, instead of just copying, so I'm lost about solving this. thanks, -- Felipe Monteiro de Carvalho _______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal