Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi WritePrivateProfileW und Unicode INI-Files (https://www.delphipraxis.net/143304-writeprivateprofilew-und-unicode-ini-files.html)

Bernhard Geyer 13. Nov 2009 15:37

Re: WritePrivateProfileW und Unicode INI-Files
 
Writeln dürfte in deiner Delphi-Version nix mit Unicode anzufangen wissen.

martinf16 13. Nov 2009 15:53

Re: WritePrivateProfileW und Unicode INI-Files
 
Das WriteLn soll auch gar keien UniCode Strings schreiben. Die Unicode Strings sollen später mit WritePrivateProfileW geschrieben werden.
Das WriteLn war nur ein Test, ob damit auch chinesische Zeichen geschrieben werden und so geschieht es auch.
Die Signatur scheint aber korrekt zu sein, zumindest wird die Datei im Editor als Unicode angezeigt und die chinesischen Zeichen sprechen ja auch dafür. Wieso lassen sich aber nun mit WritePrivateProfileW keine lateinischen Buchstaben mehr schreiben??

himitsu 13. Nov 2009 16:32

Re: WritePrivateProfileW und Unicode INI-Files
 
Wenn du eine AnsiIni hast, dann mit Notepad öffnen und als Unicode speichern.
Wenn keine vorhanden ist, dann einfach die Unicode-IniAPI nutzen und eine Unicode-Ini erstellen.

martinf16 13. Nov 2009 17:30

Re: WritePrivateProfileW und Unicode INI-Files
 
Die ini sollte vom Programm schon selber erstellt werden, deswegen ja die Idee eine leere Datei mit Unicode-Signatur zu erstellen. Aber woher bekomme ich diese Unicode IniAPI?! Oder wie rufe ich sie auf? Davon habe ich noch nichts gehört..

martinf16 16. Nov 2009 02:13

Re: WritePrivateProfileW und Unicode INI-Files
 
Ich habs! Es geht tatsächlich mit der Signatur FF FE - mein Fehler oben war ein Byte zu viel zu schreiben (die einfachsten Dinge übersieht man ja gerne) - wenn man das korrigiert und anschließend mit WritePrivateProfileW in die Datei schreibt, werden alle Unicode-Zeichen richtig in die Datei geschrieben.

kuba 31. Okt 2011 15:58

AW: WritePrivateProfileW und Unicode INI-Files
 
auch wenns schon ein Weilchen her ist, ich habs so gemacht...

Delphi-Quellcode:
   
procedure CreateIni;
var
  Ini      : TMemIniFile;
begin
   Ini := TMemIniFile.Create(ExtractFilePath(ParamStr(0))+'test.ini', TEncoding.Unicode);
///// Russisch
   ini.WriteString('Language_ru','File1','файл');
   ini.UpdateFile;
end;
kuba


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:10 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz