🤍 전 강의 25% 할인 중 🤍

2024년 상반기를 돌아보고 하반기에도 함께 성장해요!
인프런이 준비한 25% 할인 받으러 가기 >>

  • 카테고리

    질문 & 답변
  • 세부 분야

    업무 자동화

  • 해결 여부

    해결됨

hwp = win32.gencache.EnsureDispatch("hwpframe.hwpobject") 에러

23.11.10 21:16 작성 조회수 367

1

>>> hwp = win32.gencache.EnsureDispatch("hwpframe.hwpobject")

Traceback (most recent call last):

File "<stdin>", line 1, in <module>

File "D:\Users\KYJ\Documents\PycharmProject\venv\Lib\site-packages\win32com\client\gencache.py", line 628, in EnsureDispatch

mod = EnsureModule(tla[0], tla[1], tla[3], tla[4], bForDemand=bForDemand)

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "D:\Users\KYJ\Documents\PycharmProject\venv\Lib\site-packages\win32com\client\gencache.py", line 524, in EnsureModule

module.MinorVersion != tlbAttributes[4]

^^^^^^^^^^^^^^^^^^^

AttributeError: module 'win32com.gen_py.7D2B6F3C-1D95-4E0C-BF5A-5EE564186FBCx0x1x0' has no attribute 'MinorVersion'

 

답변 2

·

답변을 작성해보세요.

1

YJ KIM님 안녕하세요?

아래 두 가지 방법을 시도해 보시기 바랍니다.

  1.  

    현재 pywin32모듈이 설치된 가상환경을 실행하시고 나서,


    pythonwin.exe를 실행하세요.


    pythonwin 실행파일의 위치는 일반적으로
    가상환경폴더/Lib/site-packages/pythonwin/pythonwin.exe
    또는 동일 폴더 내의 start_pythonwin.pyw 입니다.
    image위와 같은 프로그램이 실행되면,
    "Tools" - "COM Makepy utility" 메뉴를 선택해서 실행합니다.

     

    image리스트 중 "HwpObject 1.0 Type Library (1.0)"을 선택하고
    OK를 클릭합니다.

    image여기까지 실행하셨으면 pythonwin 창을 닫고,
    파이썬을 실행한 후 파이썬을 열고 hwp를 실행해보시기 바랍니다.

 

  1. 위 과정을 실행한 후에도 동일한 오류가 계속된다면,
    "C:\Users\사용자이름\AppData\Local\Temp 폴더 안의
    "gen_py"라는 폴더를 삭제해 주시기 바랍니다.
    (일종의 캐시 폴더이므로 삭제해도 괜찮습니다.)

    위 두 개의 과정을 실행한 후에 hwp를 불러올 때에도
    동일한 오류가 나타난다면,
    오류내용을 상세히 알려주시기 바랍니다.

    개인적인 경험으로는,
    위 두 가지 방법 중 하나로 대부분 해결이 됩니다.

     

1

인프런 AI 인턴님의 프로필

인프런 AI 인턴

2023.11.12

안녕하세요 YJ KIM 님, 인프런 AI 인턴이에요.
해당 오류는 win32com 모듈의 MinorVersion 속성이 존재하지 않아 발생하는 문제입니다. 이러한 오류는 보통 win32com 모듈이 제대로 설치되지 않았을 때 발생할 수 있습니다.

해결 방법으로는 다음과 같은 절차를 따라볼 수 있습니다:
1. 우선, 가상환경(venv)에서 작업 중인지 확인해주세요.
2. 필요한 패키지가 설치되어 있는지 확인해보세요. pip install pywin32 명령을 실행하여 pywin32 패키지를 설치하실 수 있습니다.
3. 만약 pywin32가 설치되어 있다면, 해당 패키지를 최신 버전으로 업그레이드하고 다시 시도해보세요. pip install –upgrade pywin32 명령을 실행하여 업그레이드할 수 있습니다.
4. 위의 단계들을 거치고도 해결되지 않는다면, 다른 버전의 win32com 모듈을 설치해보시거나, 다른 방법으로 호환되는 라이브러리를 사용해보실 수도 있습니다.

만약 위의 방법으로도 문제가 해결되지 않는다면, 자세한 내용을 제공해주시면 더욱 정확한 도움을 드릴 수 있을 것입니다. 감사합니다!

채널톡 아이콘