문제

Idispatch 인터페이스를 통해 Excel과 대화하는 DLL을 작성하고 있습니다. VBA에서 나는 변형을 포함하는 변형을 통과합니다 Application.Caller 이곳에서 나는 Idispatch 포인터를 통해 그려집니다 .pDispVal.

내가 알고 싶은 것은 Idispatch 포인터를 통해 인터페이스를 쿼리하는 방법입니다. 연결 포인트 컨테이너를 설정하고 싶고 거기에서 Excel의 연결 지점을 찾습니다. 궁극적 인 목표는 물건을 Excel의 이벤트를 계산하고 Excel 데이터를 조작 할 수있는 것입니다.

도움이 되었습니까?

해결책

Binh Ly의 시대를 초월한 우수 (Delphi) COM 튜토리얼을 추천합니다. http://www.techvanguards.com/ 여기에는 전적으로 헌신 된 장이 포함됩니다 IConnectionPoint 및 관련 메커니즘.

또한 Eventsink 코드를 생성하기위한 무료 도구를 제공합니다.

그래도, 나는 당신이 원하는 모든 것이 Excel에 의해 트리거 된 이벤트에 반응한다면 이것이 전혀 필요하지 않다는 느낌을 가지고 있습니다. Application 물체. 델파이 타입 라이브러리 수입업자가 생성하는 래퍼 객체를 사용해 보셨습니까? 물론 자신의 포장지도 쓸 수도 있습니다.

그런 다음 다시, 나는 실제로 Excel을 위해 Addins를 작성하지 않았지만, 나는 Addins를 전망을 위해 addin을 작성하고 살아있는 단어와 Excel은 실제로이 점에서 크게 다르지 않아야합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top