Q&A

  • Interface사용법에 관해 급.급질문..도와주세요.
꾸벅~

엄청초봅니다.



델파이에 보면 source파일중에 *.pas에 interface가 선언되있는데요...

여기에 정의된 메쏘드를 쓰고 싶으면 어떻게 해야 합니까...

이 pas파일을 Uses절에 넣고 인터페이스형으로 변수를 선언하고

도트를 찍으면 인터페이스에 정의된 메쏘드나 속성이 나오는것을 볼 수 는 있는데요.

컴파일은 오류없지만 실행시키면 Violation Error 같은 것이 나오는데요...



급해서 그러는데 꼭 답변주세요.

감사합니다

꾸벅~



4  COMMENTS
  • Profile
    최용일 2001.07.14 07:47
    안녕하세요. 최용일입니다.



    Interface자체로는 아무런 능력이 없습니다. 실제 Interface가 하는 행동을 구현하는 것



    은 객체(COM, ActiveX)이고, 그 Interface가 구현된 객체(COM, ActiveX) 에서 Interface



    의 주소를 받아 와 가지고 작업을 해야합니다...



    ^^ 항상 즐코하세요...



    엄청초보 wrote:

    > 꾸벅~

    > 엄청초봅니다.

    >

    > 델파이에 보면 source파일중에 *.pas에 interface가 선언되있는데요...

    > 여기에 정의된 메쏘드를 쓰고 싶으면 어떻게 해야 합니까...

    > 이 pas파일을 Uses절에 넣고 인터페이스형으로 변수를 선언하고

    > 도트를 찍으면 인터페이스에 정의된 메쏘드나 속성이 나오는것을 볼 수 는 있는데요.

    > 컴파일은 오류없지만 실행시키면 Violation Error 같은 것이 나오는데요...

    >

    > 급해서 그러는데 꼭 답변주세요.

    > 감사합니다

    > 꾸벅~

    >

  • Profile
    엄청초보 2001.07.15 11:49
    감사합니다..

    그런데 해당 Interface의 행동을 가진 객체를 주소값을 어떻게 가져와야 하나요?

    잘 모르겠어요...귀찮으시더라도 가르쳐주세요..

    책에 봐도 안나와있거든요...



    최용일 wrote:

    > 안녕하세요. 최용일입니다.

    >

    > Interface자체로는 아무런 능력이 없습니다. 실제 Interface가 하는 행동을 구현하는 것

    >

    > 은 객체(COM, ActiveX)이고, 그 Interface가 구현된 객체(COM, ActiveX) 에서 Interface

    >

    > 의 주소를 받아 와 가지고 작업을 해야합니다...

    >

    > ^^ 항상 즐코하세요...

    >

    > 엄청초보 wrote:

    > > 꾸벅~

    > > 엄청초봅니다.

    > >

    > > 델파이에 보면 source파일중에 *.pas에 interface가 선언되있는데요...

    > > 여기에 정의된 메쏘드를 쓰고 싶으면 어떻게 해야 합니까...

    > > 이 pas파일을 Uses절에 넣고 인터페이스형으로 변수를 선언하고

    > > 도트를 찍으면 인터페이스에 정의된 메쏘드나 속성이 나오는것을 볼 수 는 있는데요.

    > > 컴파일은 오류없지만 실행시키면 Violation Error 같은 것이 나오는데요...

    > >

    > > 급해서 그러는데 꼭 답변주세요.

    > > 감사합니다

    > > 꾸벅~

    > >

  • Profile
    최용일 2001.07.18 05:35
    어떤 인터페이스를 말하시는 건가요? 인터페이스라하면 넘 광범위하군요...



    OCX, DLL로 포장되어 있는 것두 있구, 델파이 유닛에 구현되어 있는 것두 있구요...



    엄청초보 wrote:

    > 감사합니다..

    > 그런데 해당 Interface의 행동을 가진 객체를 주소값을 어떻게 가져와야 하나요?

    > 잘 모르겠어요...귀찮으시더라도 가르쳐주세요..

    > 책에 봐도 안나와있거든요...

    >

    > 최용일 wrote:

    > > 안녕하세요. 최용일입니다.

    > >

    > > Interface자체로는 아무런 능력이 없습니다. 실제 Interface가 하는 행동을 구현하는 것

    > >

    > > 은 객체(COM, ActiveX)이고, 그 Interface가 구현된 객체(COM, ActiveX) 에서 Interface

    > >

    > > 의 주소를 받아 와 가지고 작업을 해야합니다...

    > >

    > > ^^ 항상 즐코하세요...

    > >

    > > 엄청초보 wrote:

    > > > 꾸벅~

    > > > 엄청초봅니다.

    > > >

    > > > 델파이에 보면 source파일중에 *.pas에 interface가 선언되있는데요...

    > > > 여기에 정의된 메쏘드를 쓰고 싶으면 어떻게 해야 합니까...

    > > > 이 pas파일을 Uses절에 넣고 인터페이스형으로 변수를 선언하고

    > > > 도트를 찍으면 인터페이스에 정의된 메쏘드나 속성이 나오는것을 볼 수 는 있는데요.

    > > > 컴파일은 오류없지만 실행시키면 Violation Error 같은 것이 나오는데요...

    > > >

    > > > 급해서 그러는데 꼭 답변주세요.

    > > > 감사합니다

    > > > 꾸벅~

    > > >

  • Profile
    엄청초보 2001.07.18 19:21
    죄송합니다.너무 두리뭉실하게 질문을 드렸군요.

    제가 하는 작업은 델파이로 웹브라우져를 구현하는 것인데요...



    Mshtml.pas,Shodocvw.pas를 중점적으로 보고 있습니다.

    거기에 정의된 수많은 인터페이스들과 메쏘드들이 있는데요.



    저도 그동안 여러경로를 통해 자료를 찾아보았는데...

    님께서 올리셨던 '즐겨찾기에 추가기능'같은 것은 ShellUIHelper인터페이스를

    CoCreateInstance로 생성하기도 하지만



    어떤경우에는(document관련) 다른방법으로 구현하기도 하네요.

    oleobject로 받아와서 집어넣기도 하고..

    도무지 갈피를 못잡겠습니다...경우에 따라서 틀린것 같기는 합니다만.



    그래서 인터페이스를 구현하는 방법도 초보다 보니 무엇무엇이 있는지 잘 모르겠어요...



    답변주시기 불편하시다면 책이나 관련싸이트라도 추천해주셔도 감사할께요..^^

    설명을 해주시면 더 감사드릴께요^^



    최용일 wrote:

    > 어떤 인터페이스를 말하시는 건가요? 인터페이스라하면 넘 광범위하군요...

    >

    > OCX, DLL로 포장되어 있는 것두 있구, 델파이 유닛에 구현되어 있는 것두 있구요...

    >

    > 엄청초보 wrote:

    > > 감사합니다..

    > > 그런데 해당 Interface의 행동을 가진 객체를 주소값을 어떻게 가져와야 하나요?

    > > 잘 모르겠어요...귀찮으시더라도 가르쳐주세요..

    > > 책에 봐도 안나와있거든요...

    > >

    > > 최용일 wrote:

    > > > 안녕하세요. 최용일입니다.

    > > >

    > > > Interface자체로는 아무런 능력이 없습니다. 실제 Interface가 하는 행동을 구현하는 것

    > > >

    > > > 은 객체(COM, ActiveX)이고, 그 Interface가 구현된 객체(COM, ActiveX) 에서 Interface

    > > >

    > > > 의 주소를 받아 와 가지고 작업을 해야합니다...

    > > >

    > > > ^^ 항상 즐코하세요...

    > > >

    > > > 엄청초보 wrote:

    > > > > 꾸벅~

    > > > > 엄청초봅니다.

    > > > >

    > > > > 델파이에 보면 source파일중에 *.pas에 interface가 선언되있는데요...

    > > > > 여기에 정의된 메쏘드를 쓰고 싶으면 어떻게 해야 합니까...

    > > > > 이 pas파일을 Uses절에 넣고 인터페이스형으로 변수를 선언하고

    > > > > 도트를 찍으면 인터페이스에 정의된 메쏘드나 속성이 나오는것을 볼 수 는 있는데요.

    > > > > 컴파일은 오류없지만 실행시키면 Violation Error 같은 것이 나오는데요...

    > > > >

    > > > > 급해서 그러는데 꼭 답변주세요.

    > > > > 감사합니다

    > > > > 꾸벅~

    > > > >