文字列を UTF-8 形式の 1 つの ini ファイルに保存しようとしています。文字列値の 1 つを編集したいのですが、編集できません。
誰かが例を挙げて助けてくれますか?
Source: test.ini; DestDir: {app};
[INI]
Filename: {app}\test.ini; Section: testclient; Key: PlayerName; String: "{code:GetUserName}";
procedure InitializeWizard();
var
NameEdit: TNewEdit;
function GetUserName(Param: String): string;
begin
result := NameEdit.Text;
end;
procedure InitializeWizard0();
begin
PlayerSettingsPage := CreateCustomPage(wpSelectComponents, 'Test', '');
NameEdit := TNewEdit.Create(WizardForm);
NameEdit.Parent := PlayerSettingsPage.Surface;
NameEdit.Left := 25;
NameEdit.Top := NameLabel.Top + 43;
NameEdit.Width := 130;
NameEdit.Text :='Enter your Pla';
end;
私が使用しているソフトウェアは UTF-8 形式の ini ファイルしか受け付けないため、ini を UTF-8 で保存する必要があります。
編集に使用している ini が ansi 形式である場合、Unicode フォントが適切に保存されず、次のように表示されます: ?????、ini が unicode [UTF-16LE] の場合、ini は unicode を表示します文字は正しく表示されますが、ゲームのロード時に表示されません。
次に、編集に使用している ini が UTF-8 形式の場合、inno セットアップはテキストを適切に保存しません。次に、インターネットで、inno setup にはそれを行うための特別なコードがあることを見ましたが、それをうまく使用する方法がわかりません。
SaveStringsToUTF8File
Inno Setup Unicode を使用しています。