1

文字列を 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 を使用しています。

4

0 に答える 0