|
DD 님이 쓰신 글 :
: 네로 님이 쓰신 글 :
: : 송구스럽게 매번 정보만 얻어가는 중생이 질문을 또 올리게 됐습니다.
: :
: : CppWebBrowser를 사용한 컴포넌트를 제작중입니다. CppWebBrowser를 생성해서 Hide 시켜놓고
: :
: : 화면을 이미지로 만들어 PaintBox에 배경으로 깔고 그위에 도형을 그리는 컴포넌트입니다.
: :
: : 콤포넌트는 TPanel을 상속받아 만들었고 쓰레드와 GDI를 사용하고 있습니다.
: :
: : 근데 QueryInterface로 IViewObject를 얻어와 Draw를 하면 엑세스바이올레이션을 띄웁니다.
: :
: : 어플에서는 잘 작동하는 구문인데 말이죠
: :
: : 같은 현상을 격어신 분들 계시면 조언좀 부탁드립니다. 안그래도 없는 머리털이 요즘 숭숭하고 빠지고 있습니다.
:
: 아마 따로 만들어놔야할듯
:
: 페인트박스같은경우도 보통 파일을 따로만들어서 선언한뒤 프로젝트에 만들어놓는게 좋지않을가요?
: 보통 그럴때 생기던데요 콤포넌트 글래스내에선언해서 쓰면 그러더라구요 따로 헤더를 만들어서
: 해당 클랙스를 선언해주고 프로젝트에 포함시킨뒤에 인클루드 해서하시면 안생기실듯;
:
: 따로안해두면 라이브러리가 없게되는거죠; 해당 함수불러오는데 콤포넌트.BPL. 파일내에 없는거죠
: 없으니 바이얼레이션 에러 생기는거같네요 보통 DLL 파일내에 함수를 가저올때도 인자하나만 틀려도
: 바이얼레이션 에러뜨자나요 거기에 또 해당 DLL에없는 함수를 가저오면
: 엑세스 바이얼레이션 "0X00000000000" 이렇던가".. 그렇죠 해당함수가없으니 에러가나는거죵;
:
: 콤포넌트에 콤포넌트에디터를 추가할때 메인 콤포넌트클래스에다가 추가하는게아니고
: 따로 만들어서 프로젝트에 포함시켜서 하자나요? 그거랑같다고 보면되겠죠
DD님 답변 감사합니다.
DD님 답변 내용을 보고 그럴수 있겠다 싶어 IViewObject의 다른함수를 호출해봤습니다.
에러없이 동작을 하더군요(AddRef, Release) 두함수 모두 인자가 없는 함수구요
다른 함수들은 잘 동작하는걸루 봐서 Draw시에만 에러가 발생하는거 같습니다.
|