THtmlでローカルファイルを表示させる

Delphi 3 の プロフェッショナル版以上に付いてくる THTML コンポーネントの使い方です。このコントロールは HTMLファイルを表示します(ただしフレームに未対応)。使い方に関してはサンプルフォルダ \Demos\Coolstuf\Webbrows.dpr を見れば一目瞭然です。
さて、この HTMLコントロールでローカルの HTMLファイルを表示する場合は少し工夫が必要です。なぜなら アドレスに "C:\index.html" と言う書き方が出来ないからです。具体的には "file:///c:/index.html" と書かなければ行けません。これを一文字ずつ変換していたら大変です。HttpAppユニットには Dosのパスを変換する便利な関数が DosPathToUnixPath 関数 が用意されています。これを使えば簡単に変換できます。

■ HTMLコントロールにローカルファイルを表示させる例
  procedure TfrmMain.Tutorial1Click(Sender: TObject);
  var
    strDir  :  string;
  begin
    strDir  :=  ExtractFilePath(TApplication(Application).Exename) + 'tutor.htm';
    HTML1.RequestDoc('file:///' + DosPathToUnixPath(strDir));
  end;

※ uses節に HTTPApp を追加してください。

※ HTTPAppを追加するとプログラム内の Applicationオブジェクトを使ったコードがエラーになります。上の例のように Applicationオブジェクトはすべて TApplicationにキャストするように変更してください。