Q&A

  • 일반 어플리케이션 폼을 ActiveX폼으로 변경후에 일반 어플 폼에 있는 특정 콤포넌트에 액세스를 못하내요
제목처럼 일반 어플을 ActiveX에 붙였습니다. 그런데 일반 어플을 만들때 사용했던(타 ActiveX 컨트롤을 설치하여사용하는 콤포넌트)콤포넌트를 사용할려고하면 에러가 나는군요

프로그램구조는
html(javascript로 ActiveX함수 호출)
ex)
ActiveX.AgentLogin();

ActiveX(일반 어플 폼의 함수 호출)
ex)
procedure AgentLogin;
Application.Login1Click();

일반 어플( 설치된 ActiveX 콤포넌트 사용)
ex)procedure Application.Login1Click;
.....
TConnect.Host := TestHostIp;  <-- 이 콤포넌트 사용시 에러입니다.

에러 내용은 '메서드 또는 속성 액세스로의 예기치 않은 오류입니다.'입니다.

델파이를 처음 사용하는 지라 질문을 잘 설명을 햇는지 모르겠군요
암튼 도와주시면 고맙겠습니다. ^^
그럼 좋은하루보내세요

2  COMMENTS
  • Profile
    Marek 2006.11.01 19:16
    일반어플에서 사용한 컴포넌트의 속성과 이벤트는  ActiveX에서는 제한되어 있습니다.
    이를테면 ActiveX 폼 역시 이벤트의 종류가 줄어든것 발견하셨지요? 상단VCL탭의 수도 줄어들었을 것입니다.
    따라서 없어진 이벤트, 컴포넌트를 최대한 피해서 작성하셔야 합니다.
    일반 어플에서 붙여넣기를 하셨다면 더욱 기존 코드 및 컴포넌트를 대체/수정하셔야 합니다.

    원하시는 답변이 되었는지 모르겠습니다.
    즐건 하루 되세요...


  • Profile
    유윤열 2006.11.08 01:33
    ^^답변 감사합니다. 그리고 아는 분의 도움으로 해결하였습니다.
    activeX의 콤포넌트나 함수에 직접 접근하는것은 아니구요
    windows message hooking을 사용하여 해결하였습니다.