On 10 Nov 2007, at 15:08, Felipe Monteiro de Carvalho wrote:

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,

Maybe because Filter may already have disappeared/freed by the time the dialog is closed? (and for some reason it may still need that text at that time)


Jonas
_______________________________________________
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal

Reply via email to