相关疑难解决方法(0)

Unicode和UTF-8有什么区别?

考虑:

替代文字

这是真的unicode=utf16吗?

许多人说Unicode是标准,而不是编码,但大多数编辑器实际上支持另存为Unicode 编码.

unicode utf-8

195
推荐指数
6
解决办法
14万
查看次数

来自Unicode Inno Setup的LoadStringFromFile和StringChangeEx(Ansi文件)

我正在尝试更新我的一个脚本以使用Inno Setup的Unicode版本.不幸的是我遇到了一个问题,StringChangeEx期望看到一个unicode String而不是我需要的AnsiString(不匹配的类型).是否有另一种方法可以从Unicode Inno Setup中替换匹配的AnsiStrings?

我正在使用WizardDirValue()以避免必须一直打字ExpandConstant('{app}\'),万一有人想知道为什么.

var
  AnsiData: AnsiString;
begin
  LoadStringFromFile(WizardDirValue() + '\legacyansi.conf', AnsiData)
  { Type mismatch, StringChangeEx expects String which is Unicode }
  StringChangeEx(AnsiData, 'current', 'replace', True);
  SaveStringToFile(WizardDirValue() + '\legacyansi.conf', AnsiData)
end;
Run Code Online (Sandbox Code Playgroud)

unicode inno-setup ansi pascalscript

13
推荐指数
1
解决办法
6455
查看次数

在Inno Setup Pascal脚本中读取UTF-16文件

我有一个.inf从 Resource Hacker 导出的文件。该文件采用 UTF-16 LE 编码。

EXTRALARGELEGENDSII_INI TEXTFILE "Data.bin"

LARGEFONTSLEGENDSII_INI TEXTFILE "Data_2.bin"

NORMALLEGENDSII_INI TEXTFILE "Data_3.bin"

THEMES_INI TEXTFILE "Data_4.bin" 
Run Code Online (Sandbox Code Playgroud)

当我使用该LoadStringFromFile函数加载它时:

EXTRALARGELEGENDSII_INI TEXTFILE "Data.bin"

LARGEFONTSLEGENDSII_INI TEXTFILE "Data_2.bin"

NORMALLEGENDSII_INI TEXTFILE "Data_3.bin"

THEMES_INI TEXTFILE "Data_4.bin" 
Run Code Online (Sandbox Code Playgroud)

我在调试输出中得到这个:

E
Run Code Online (Sandbox Code Playgroud)

请告诉我如何解决这个问题。

提前致谢。

inno-setup utf-16 pascalscript

4
推荐指数
1
解决办法
2121
查看次数

标签 统计

inno-setup ×2

pascalscript ×2

unicode ×2

ansi ×1

utf-16 ×1

utf-8 ×1