長年疑問に思ってきましたが、どうしても使用しなければならなくなりそうなので、質問させてください。
下の文をフォームのないunitに書き込むとIdHTTPProtocolExceptionが未定義になりますが、Form1以外のVCLフォームのunitに書き込むとエラーになりません。
フォームのないunitでエラーを出さずに使用するにはどうしたらいいでしょうか?
よろしくお願いします。
with Form1 do begin
ENC :=TMBCSEncoding.Create(j);
MS :=TMemoryStream.Create;
S1:=TstringList.Create;
try
IdHTTP1.Get(FURL,MS);
MS.Position :=0;
S1.LoadFromStream(MS,ENC);
for i := 0 to S1.Count-1 do S:=S+S1[i];
except
on e: EIdHTTPProtocolException do
begin
//;
end;
on e: Exception do
begin
//
end;
end;
ENC.Free;
MS.Free;
S1.Free;
end;
XE2を使用しています。
試していませんが・・
usesにIdHTTPを追加するのは、いかがですか?
ありがとうございました。エラーは消えました。
下の文が最初からエラーにならないので、
IdHTTPがいるとは気づきませんでした。
try
IdHTTP1.Get(FURL,MST);
MST.Position :=0;
SL.LoadFromStream(MST,ENC);
for I := 0 to SL.Count - 1 do s:=s+sL[i];
finally
ENC.Free;
MST.Free;
SL.Free;
end;
もし,参考になれば.
http://mrxray.on.coocan.jp/bbs/DelphiBBS/mrxray_delphifan_coffe.cgi?tree=s7691#7691
ツイート | ![]() |