На некоторых машинах мой установщик NSIS создает папку с одним неправильным символом.Установщик NSIS создает каталог с использованием неправильного набора символов
НСИ должен был создать папку с ń полукокса
// U+0144 ń c5 84 LATIN SMALL LETTER N WITH ACUTE
, но вместо этого создал папку с ñ полукокса
// U+00F1 ñ c3 b1 LATIN SMALL LETTER N WITH TILDE
Проводная часть является то, что происходит только на некоторых машины, и я не мог воспроизвести это. Насколько я могу судить, это было сообщено только для Windows Vista (возможно, базового издания).
Я подозреваю, что это как-то связано с преобразованием Windows-1250 в UTF. Поскольку NSIS по-прежнему не поддерживает UTF, я использую файл сценария с кодировкой Windows-1250. Обозначение ń равно 0xF1
и должно быть переведено в UTF U+c584
, но вместо этого установщик создает папку с U+c3b1
char. С другой стороны, U+c3b1
эквивалентен Windows-1252 0xF1
.
Что может повлиять на интерпретацию символов, используемых в скрипте NSIS, когда выполняется скомпилированный установщик? Как обеспечить ожидаемое преобразование 0xF1
=>U+c584
?
Чтобы все было ясно - я бы не хотел использовать ветку uNSIS, поскольку у нее все еще есть нерешенные проблемы. Я терпеливо жду официального выпуска NSIS 2.50. И мальчик, я жду с 2009 года! – SiliconMind
Какие нерешенные проблемы у вас есть с NSISU? У меня не было никаких проблем с этим; это все, что мы используем сейчас на портале PortableApps.com. –