Hallo Gemeinde,
ich habe mal wieder so ein dummes Problem.
Ich möchte den Inhalt im ATViewer anzeigen.
Nutze ich dazu ein MemoryStream bleibt zeigt der ATViewer nix an(Fenster wird Dunkelgrau):
Delphi-Quellcode:
procedure TMailForm.ShowMemFile(ArchivName : String);
var
MS : TMemoryStream;
UZ : TAbUnZipper;
begin
MS := TMemoryStream.Create;
try
UZ := TAbUnZipper.Create(Self);
try
UZ.Stream := Stream;
UZ.ExtractToStream(ConfirmFileName(ArchivName), MS);
MS.Position := 0;
ShowContent(MS, vmodeMedia); // <-- Problem?
finally
UZ.Free;
end;
finally
MS.Free;
end;
end;
Delphi-Quellcode:
procedure TMailForm.ShowContent(aStream : TStream; AMode: TATViewerMode);
begin
ATViewer.OpenStream(aStream, aMode);
end;
Nutze ich dagegen den FileStream, futz es:
Delphi-Quellcode:
procedure TMailForm.ShowFileText(aText : String);
var
FS : TFileStream;
FN : String;
begin
FN := GetTempFileName('temp.html');
FS := TFileStream.Create(FN, fmCreate, fmShareDenyWrite);
try
FS.Write(Pointer(aText)^, Length(aText));
FS.Position := 0;
finally
FS.Free;
end;
ATViewer.Open(FN);
end;
Meine Vermutung, es hängt mit
AMode: TATViewerMode
zusammen.
Hat jemand einen kleinen Hinweis?
Ach so, den Typ(?) der Datei kenne ich, in Form von:
.
Ich Danke Euch und wünsche ein friedsammes Wochenende