OLE API 정보 못 가져옴(vb.net)

이 범주에서는 한글 오토메이션에 대한 다른 사용자의 기술 지원을 제공 받을 수 있습니다.

vb.net에서 automation 테스트를 진행하는데, API 정보를 못 가져오는 오류가 발생하여 문의 드립니다.

기존 개발하는 환경에서는 정상적으로 동작하고 있는데,
한글이 설치가 안된 PC에서 한글 2022를 온라인 설치 후 vb.net 소스에서 한글 OLE 불러오기 테스트를 아래와 같이 진행해봤습니다.

    dim Hwp as Object = CreateObject("HWPFrame.HwpObject")
    Hwp.XHwpWindows.Item(0).Visible = True
    Hwp.Open("D:\resources\hwp\test.hwp", "HWP", "forceopen:true")

결과로 두 번째 줄 “Hwp.XHwpWindows.Item(0).Visible = True” 에서 아래와 같이 오류가 발생하고 있습니다.
System.MissingMemberException: ‘Public member ‘XHwpWindows’ on type ‘IHwpObject’ not found.’

Hwp변수의 인자를 디버깅을 해 보면 XHwpWindows가 표시되는데, 왜 못 가져오는지 잘 모르겠습니다.
도움 부탁 드려요

1개의 좋아요

안녕하세요.

프로젝트에 한글 오토메이션 라이브러리를 참조 추가하는 과정이 필요할 것 같습니다.
Visual Studio에서 프로젝트 > 참조 추가… > HwpObject 1.0 Type Library 선택

프로젝트에 HwpObjectLib 라이브러리가 추가되는 것을 확인할 수 있습니다.

그러면 HwpObject 라이브러리내의 개체를 찾을 수 있을 것 같습니다.

    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        Dim hwp As HwpObjectLib.IHwpObject
        Dim wins As HwpObjectLib.IXHwpWindows
        Dim win As HwpObjectLib.IXHwpWindow

        hwp = CreateObject("HWPFrame.HwpObject")
        wins = hwp.XHwpWindows
        win = wins.Item(0)
        win.Visible = True
    End Sub

감사합니다.
1개의 좋아요

빠른 답변 감사합니다.
hwp 선언을 HwpObjectLib.IHwpObject로 하니 정상동작 합니다.
고맙습니다.

1개의 좋아요