Pascal (Lazarus/Delphi)
Pascal (Lazarus/Delphi)
Unpack MHT to Files
See more MHT / HTML Email Examples
Demonstrates how to unpack a .mhtml to files. Unpacks the HTML and to a directory, and image files to a sub-directory located under the directory where the HTML file is unpacked. The image links in the HTML are updated to point to the image files.Chilkat Pascal (Lazarus/Delphi) Downloads
program ChilkatDemo;
// Demonstrates using the Chilkat Pascal wrapper via the C bridge DLL.
// Builds as a console application under Lazarus (FPC) or Delphi.
{$IFDEF FPC}
{$MODE DELPHI}
{$ENDIF}
{$APPTYPE CONSOLE}
uses
{$IFDEF UNIX}
cthreads,
{$ENDIF}
SysUtils,
CkDllLoader,
Chilkat.Mht;
// ---------------------------------------------------------------------------
procedure RunDemo;
var
success: Boolean;
mht: TMht;
mhtPath: string;
unpackDir: string;
htmlFilename: string;
partsSubDir: string;
begin
success := False;
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
mht := TMht.Create;
// This should be an absolute or relative path to the MHT file.
// It is the MHT to be unpacked.
mhtPath := 'qa_data/mht/test.mht';
unpackDir := 'C:/AAWorkarea/mht_unpack';
htmlFilename := 'test.html';
partsSubDir := 'images';
// Unpacking will create the HTML file C:/AAWorkarea/mht_unpack/test.html
// The image files are unpacked to C:/AAWorkarea/mht_unpack/images
// The unpackDir and partsSubDir are automatically created if needed.
success := mht.UnpackMHT(mhtPath,unpackDir,htmlFilename,partsSubDir);
if (success = False) then
begin
WriteLn(mht.LastErrorText);
WriteLn('Failed.');
end
else
begin
WriteLn('Success.');
end;
mht.Free;
end;
// ---------------------------------------------------------------------------
begin
try
RunDemo;
except
on E: Exception do
WriteLn('Unhandled exception: ', E.ClassName, ': ', E.Message);
end;
WriteLn;
{$IFDEF MSWINDOWS}
WriteLn('Press Enter to exit...');
ReadLn;
{$ENDIF}
end.