DelphiXEコンパイル済みプログラムとIdHTTPコンポーネントを使用して、自分のWebサイトのupdate.txtファイルにアクセスしようとしています。
私が使用しているコードは次のとおりです。
procedure TFormAbout.SpeedButtonUpdateClick(Sender: TObject);
function CheckUpdates: String;
var lIdHttp: TIdHTTP;
begin
lIdHttp := TIdHTTP.Create(nil);
result := lIdHttp.Get('http://www.test.com/test_down_load/update.txt');
end;
var
sWebVersion: String;
sVersionList: TStringList;
begin
try
sWebVersion := Checkupdates;
except
on E: Exception do
begin
ShowMEssage(E.ErrorMessage);
MessageDlg('An Error occured checking for an update.',mtError,[mbOK],0);
end;
end;
if sWebVersion <> '' then
begin
sVersionList.CommaText := sWebVersion;
ShowMessage('Version: ' + sVersionList[0] + ' - ' + 'Date: ' + sVersionList[1]);
end;
end;
ただし、これによりエラーが発生します:HTTP1.1 / 403Forbidden
IdHTTPコンポーネントは、次のプロパティで設定されています。
HandleRedirects := true;
HTTPOptions [hoForceEncodeParams];
ProtocolVersion := pv1_1;
Request.UserAgent := Mozilla/5.0 (compatible; Test)
IEブラウザにURLを入力すると、エラーなしでファイルが返されますが、プログラムからアクセスするとエラーが発生します。任意のポインタをいただければ幸いです。.htaccessはサイトに適しています。ファイルのアクセス許可は、Webサイト0644で正しいです。
IdHTTPコンポーネントの他のプロパティを設定する必要がありますか?このコンポーネントはaboutフォームにのみあります。他に何か必要ですか。
updateinfo.txtファイルには、「18.3.5,2011/12/17」というテキストが引用符で囲まれているだけです。
ここでは、実際のプログラム名とURLの代わりに「テスト」を使用しました。
よろしくエイドリアン