念のために,追記しておきます.
> EIdHTTPProtocolException も Form1.EIdHTTPProtocolException
> ということになります.
> ところが,Form1 には EIdHTTPProtocolException が定義されていません.
> これは IdHTTTP ユニットで定義されています.
> つまり,uses に IdHTTP が必要です.そうすれば,Delphi は,
これは,
EIdHTTPProtocolException が,IdHTTP.pas で定義されているからです.
もし,質問された方が提示したコードを,Form1 のユニットで実行した場合は,
未定義のエラーにはなりません.
なぜかというと,Form1 のユニットの uses には IdHTTP があるからです.
これは,質問された方の発言内容から判定できます.
Delphi XE の場合ですが,新規にプロジェクトを作成すると,
以下のようになっています.
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs;
TIdHTTP コンポをフォームに配置して,コンパイルすると,次のように,
uses に自動で IdHTTP が追加されます.
このように,コンポーネントをフォームに配置すると,自動的に,
必要なユニット名が追加される仕組みになっています.
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, IdHTTP;
|