Einzelnen Beitrag anzeigen

Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#1

Unicode in Ressourcefiles

  Alt 21. Nov 2004, 15:59
Ich versuche gerade kramphaft eine sprachdatei für eine hebräische sprache für unser Programm zu erstellen aber ich komm nicht weiter. Das ganze ist bei uns über sogenannte Ressource-Dlls gelöst in denen die Übersetzungen stehen. Je nach dem welche Sprache ausgewählt ist wird somit eine andere DLL eingebunden.

Bei der hebräischen Sprache bin ich jetzt soweit, das ich die ressourcendatei (.rc) als unicode abspeichern muss damit die hebräischen Zeichen nicht verlorgen gehen. Doch sobald die ressourcendatei als unicode abgespeichert ist will der ressourcecompiler diese nicht mehr compilieren. Fehler: "Error strings.rc 1 3: Expecting resource name or resource type name"
und in Zeile 1 steht:
Code:
#include "..\strings.inc"
Da dies nicht ging hab ich mir gedacht das ich das ganze auf die schnelle über eine extra datei mache. Mein Problem dabei ist aber wie ich die datei dann öffnen soll und einlesen. Ich hab es bereits mit FileStream probiert und das ganze versucht auf einen Widestring zuzuweisen aber auch das hat nicht so recht geklappt.

Wie kann man also unicode-dateien öffnen und auf einer Canvas ausgeben lassen?
Habs bereits mit
Delphi-Quellcode:
var LStream: TStream;
    LBuffer: WideString;
begin
  LStream := TFileStream.Create('e:\test.txt', fmOpenRead);
  LBuffer := '';
  setlength(LBuffer, LStream.Size);
  LStream.Read(LBuffer[1], LStream.Size);
  TextOutW(canvas.Handle, 0, 0, PWideChar(LBuffer), LStream.Size);
  LStream.Free;
end;
versucht aber auch da werden nicht die hebräischen zeischen sondern nur vierecke etc. dargestellt. (das eingeben der zeischen im notepad klappt ohne probleme (delphi weigert sich allerdings auch))
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat