Что-то я уже все, непонимаю, почему Unicode версия не понимает файла с Unicode именем, например:
Код:
tFile := 'd:\führe.txt';
if FileExists(tFile) then
begin
MsgBox(tFile, mbInformation, MB_OK);
end;
нету мессаджа, имя файла переводится почему то в ANSI: fuhre.txt
тут надо разобраться, почему Inno коцает юникодовое имя, может бы PAnsiChar нормально работало бы.
добавлено
насколько я понял их хелпа, Unicode версия имеет частичную поддержку Unicode. данные строки в коде автоматически конвертируются в Ansi, поэтому функции и не распознают эти строки, только если использовать:
tFile := 'd:\f' +Chr($FC)+ 'hre.txt';
и то это криво понимается в итоге и все равно не работает, да и не будешь автопроверки делать с постоянным указанием чаров в хекс.
вобщем не вижу смысла делать поддержку Unicode имен в пути, когда сама Inno в коде этого сделать не способна. текстовые строки она умеет конвертировать, не вопрос, есть функции, но эти строки не понимаются при использовании их в качестве путей для функций ропса.
наверное, я не знаю по этой части чего-то, пусть мудрейшие старожилы добавят или поправят информацию об этом.
а пока, dll остается такой, поддерживает длинные пути все-таки, большие файлы берет. не думаю, что большинство компонентов и библиотек для Inno умеют работать с юникод именами в пути.