Einzelnen Beitrag anzeigen

Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.014 Beiträge
 
Delphi 12 Athens
 
#20

AW: LoadResource lädt 2 Resourcen statt nur einer / falsches Encoding

  Alt 20. Aug 2016, 13:02
Wenn ich mir den Code nochmal betrachte, dann geht es hier ja gar nicht um das Encoding der RC-Datei, sondern um das Encoding der Datei-Resource selber. Dann ist der c-Parameter tatsächlich überflüssig und das Problem ist einfach die falsche Leseroutine für die Resource.

Wenn die HTML-Dateien nun mal in UTF-8 codiert sind, dann muss man die halt auch so einlesen:

Delphi-Quellcode:
function LoadTextFromResourceByName(ResourceName: String): String;
var
  reader: TStreamReader;
  ResourceStream: TResourceStream;
begin
  ResourceStream := TResourceStream.Create(HInstance, ResourceName, RT_RCDATA);
  try
    reader := TStreamReader.Create(ResourceStream, TEncoding.UTF8);
    try
      result := reader.ReadToEnd;
    finally
      reader.Free;
    end;
  finally
    ResourceStream.Free;
  end;
end;
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat