이 예제가 너무 사소한 것 같으면 다음 섹션에서 Delphi의 생산자 구성 요소와 HTML 생성에 대해 설명하는 약간 더 흥미로운 버전을 볼 수 있습니다. 예를 들어 다른 구성 요소의 경우 연결을 호출할 때 연결 이벤트가 발생할 때까지 기다리거나 속성이 연결됨을 표시할 때까지 루프해야 합니다. Indy를 사용하면 Connect를 호출하고 돌아올 때까지 기다립니다. 성공하면 반환됩니다. 실패하면 예외가 발생합니다. Indy로 작업하는 것은 파일 작업과 매우 유사합니다. Indy를 사용하면 다른 이벤트에 분산되지 않고 모든 코드를 한 곳에 배치할 수 있습니다. 또한 Indy는 스레딩에 훨씬 쉽고 적합합니다. PageProducer 구성 요소는 원하는 문자열일 수 있는 사용자 정의 태그를 지원하지만 먼저 TTags 열거형에 정의된 특수 태그를 검토해야 합니다. 가능한 값에는 tgLink(링크 태그의 경우), tgImage(img 태그의 경우), tgTable(테이블 태그의 경우), 기타 몇 가지 값이 포함됩니다. PageProd 예제에서와 같이 사용자 지정 태그를 만드는 경우 HTMLTag 처리기에 대한 태그 매개 변수값은 tgCustom입니다. 브라우저의 명령줄에 경로와 일부 매개 변수를 전달하면 경로가 다시 해석되고 표시됩니다. 예를 들어 그림 19.6에서는 이 명령줄의 효과를 보여 줍니다.

그러나 사이트의 사용자 지정 소프트웨어가 변경될 수 있으며 이로 인해 WebFind가 올바르게 작동하지 않을 수 있습니다. 이 프로그램은 또한 델파이 를 마스터에 있었다 6; 그러나 사용자 에이전트 HTTP 헤더가 누락되었으며 잠시 후 Google이 서버 소프트웨어를 변경하고 요청을 차단했습니다. 사용자 에이전트에 대한 값을 추가하면 문제가 해결되었습니다. 그림 19.7: HtmlProd 예제의 출력, 페이지 생산자 구성 요소의 간단한 demonstra-tion, 사용자가 데모 페이지 단추를 클릭 하면이 생산자 구성 요소의 출력을 보다 완전 하 게 만들려면 두 작업을 수행할 수 있습니다. 첫 번째는 일부 헤더 및 바닥글 정보(HTML 제목 및 닫기 요소를 생성)를 제공하고 HTML 테이블에 캡션을 추가하는 것입니다. 두 번째는 RowAttributes, TableAttributes 및 열 속성에서 지정한 설정을 사용하여 테이블을 사용자 지정하는 것입니다. 기본 구성 요소 편집기이기도 한 열의 속성 편집기를 사용하면 그림 19.9에서 볼 수 있듯이 이러한 속성의 대부분을 설정할 수 있으므로 출력에 대한 멋진 미리 보기를 제공할 수 있습니다. 이 편집기사용 전에 필드 편집기에서 데이터 집합필드에 대한 속성을 설정할 수 있습니다. 예를 들어 채우기 및 영역 필드의 출력을 포맷하여 수천 개의 구분 기호를 사용할 수 있습니다. HtmlProd 구성 요소를 사용하여 정적 HTML 파일을 생성할 수 있습니다. HttpServ 예제에서 보여 준 것과 유사한 접근 방식을 사용하지만 보다 현실적인 컨텍스트에서 웹 서버로 두 배가됩니다.