Q&A 게시판에서 검색해봤는데도 도저히 모르겠어서요...
제가 갖고 있는 프로그램은 NMHTTP를 썼구요.
델파이에서 아파치 서버로 쿼리를 넘긴 후(NMHTTP.Post이용), 아파치 서버에서 데이터베이스 서버로 다시 쿼리를 넘깁니다. 결과값은 그 반대로 가져오구요.
간단한 쿼리는 결과값을 제대로 가져옵니다.
문제는 엄청 오래 걸리는 쿼리인데요...
델파이 소스에서 NMHTTP.TimeOut을 이용하면, Socket readln error가 나구요.
NMHTTP.TimeOut을 빼면 돌아가는 듯 하다가, Access violation address 에러가 뜹니다.
처음에 오래걸리는 쿼리의 경우에는 아파치 서버의 타임아웃에 걸려서 제대로 값이 안돌아 오는 것 같아, 아파치 서버의 타임아웃을 무한대로 설정했는데도 계속 그 에러가 뜨네요.
우선 Access violation address를 없애는 방법...
만일 타임아웃때문에 값을 못가져왔다면 델파이 쪽에서 서버(데이터베이스 서버)로의 연결을 끊어주는 방법....
각각에 대한 증상, 원인, 치료방법을 아시는 고수님들~~~
사소한 거라도 조으니 마니마니 답해주세요~~~
좋은 하루 되시구요..^^
except
end 문을 써 보세요..
procedure TForm1.SpeedByutton1onClick(Sender: TObject);
var
s : string;
begin
try
http.post('www.naver.com', '');
s := http.Body;
except
end;
이렇해 하시면 에러가 나지 않을겁니다.
timeout이 발생해도 에러 예외처리를 하고 넘어간답니다.