C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[15460] [만해] 컴포넌트 고치고 있는데요 에러가 흑흑~ 좀 봐주세요~
만해 [greenuri] 717 읽음    2002-02-13 05:14
안녕하세요

만해입니다.

지난번 부터 하고 있던

웹 로봇을 만들기 위해서

지금 파서를 지난번에 있던거를 뜯어 고치고 있는데요

분명히 함수 선언밑 여러가지로 다 고쳐놨는데요


void __fastcall TForm1::BodyParser(AnsiString html)
{
  THTMLParser* hParser = new THTMLParser();
  hParser->Lines->Add(html);
  hParser->Execute();
  TStringList * AList = new TStringList();
  AList = hParser->GetTagProperty("A","HREF");
}

이게 호출 부분 이고요


class DELPHICLASS THTMLParser;
class PASCALIMPLEMENTATION THTMLParser : public System::TObject
{
    typedef System::TObject inherited;
   
private:
    AnsiString Text;
    AnsiString Tag;
    bool isTag;
    bool isExecute;
    void __fastcall AddText(void);
    void __fastcall AddTag(void);
   
public:
    Classes::TList* parsed;
    Classes::TStringList* Lines;
    __fastcall THTMLParser(void);
    __fastcall virtual ~THTMLParser(void);
    void __fastcall Execute(void);
    bool __fastcall IsExe(void);
    Classes::TStringList* __fastcall GetTagProperty(AnsiString ATag, AnsiString AProperty);
};

이쪽은 함수 선언 부분이고요


function THTMLParser.GetTagProperty(ATag , AProperty : string ):TStringList;
var
    j,i:integer;
    obj:TObject;
    HTMLTag:THTMLTag;
    HTMLParam:THTMLParam;
begin
  if not IsExe then
    Execute;

  for i:= 1 to parsed.count do
  begin
    obj:=parsed[i-1];

    if obj.classtype=THTMLTag then
      begin
        HTMLTag:=THTMLTag(obj);
        if HTMLTag.Name = ATag then
          begin
            for j:= 1 to HTMLTag.Params.count do
              begin
                HTMLParam:=HTMLTag.Params[j-1];
                if HTMLParam.key = AProperty then
                  Result.Add(HTmlParam.value);
              end;
          end;
      end;
  end;
  obj.Destroy;
  HTMLTag.Destroy;
  HTMLParam.Destroy;
end;

이것은 실제 루틴 부분입니다.

우선은 빌더에서는 코딩상에서는 별 에러가 없고요

다만 에러 나는건

[Linker Error] Unresolved external '__fastcall Htmlpars::THTMLParser::GetTagProperty(System::AnsiString, System::AnsiString)' referenced from D:\PROJECT\SOCKET\UNIT1.OBJ

기존에 있던 소스에 제가 방금전에 올려 놓은 소스를 추가 시켯을 뿐인데요

뭔가 잘 안되네요

좀 봐주세요~

PS. 그런데 이 질문은 델파이란에 올려놔야 하는지

여기 올려 놔야 하는지 잘 모르겠네요

소소는 델파이인데, 호출 부분은 빌더니 쩝~ 구분이 잘 안되네요 하하~

고수님들의 조언 바랍니다.

+ -

관련 글 리스트
15460 [만해] 컴포넌트 고치고 있는데요 에러가 흑흑~ 좀 봐주세요~ 만해 717 2002/02/13
15462     Re:[만해] 컴포넌트 고치고 있는데요 에러가 흑흑~ 좀 봐주세요~ 화이트 782 2002/02/13
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.