해결된 질문
작성
·
2.9K
2
안녕하세요!
기존에 아나콘다로 32비트 가상환경을 만들어서 win32사용했을때는 오류가 안났는데
최근 아나콘다 자체를 64비트로 변경하고
64비트 가상환경을 만들어 사용하려하니 아래와 같은 오류가 납니다.
찾아보니 32비트 가상환경으로 변경해야한다고 해서 32비트 환경구성 후 진행해도 동일한 에러가 나는데 어떻게 해야하는지 알 수 있을까요?
(D:\Anaconda3_envs\dask_3.8.10) C:\Users\user>python
Python 3.8.10 (default, May 19 2021, 13:12:57) [MSC v.1916 64 bit (AMD64)] :: Anaconda, Inc. on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import win32com.client as win32
>>> hwp = win32.gencache.EnsureDispatch("HWPFrame.HwpObject")
Traceback (most recent call last):
File "D:\Anaconda3_envs\dask_3.8.10\lib\site-packages\win32com\client\dynamic.py", line 84, in _GetGoodDispatch
IDispatch = pythoncom.connect(IDispatch)
pywintypes.com_error: (-2147221021, '작업을 사용할 수 없습니다.', None, None)
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "D:\Anaconda3_envs\dask_3.8.10\lib\site-packages\win32com\client\gencache.py", line 621, in EnsureDispatch
disp = win32com.client.Dispatch(prog_id)
File "D:\Anaconda3_envs\dask_3.8.10\lib\site-packages\win32com\client\__init__.py", line 118, in Dispatch
dispatch, userName = dynamic._GetGoodDispatchAndUserName(dispatch, userName, clsctx)
File "D:\Anaconda3_envs\dask_3.8.10\lib\site-packages\win32com\client\dynamic.py", line 104, in _GetGoodDispatchAndUserName
return (_GetGoodDispatch(IDispatch, clsctx), userName)
File "D:\Anaconda3_envs\dask_3.8.10\lib\site-packages\win32com\client\dynamic.py", line 86, in _GetGoodDispatch
IDispatch = pythoncom.CoCreateInstance(
pywintypes.com_error: (-2147221164, '클래스가 등록되지 않았습니다.', None, None)
답변 2
1
아이고 답변이 늦었습니다ㅜㅜㅜ 죄송합니다ㅜㅜㅜ
그래도 해결하셨다니 너무 다행입니다ㅎ
밑에 댓글로 작성해주신 해결방법을 보니까,
제가 답변을 미리 확인했어도 올바른 답변을 드리지 못했을 것 같습니다ㅜㅜㅜㅜ
강의 들어주셔서 감사합니다.
늘 건강하시고,
행복한 하루 되세요!!!^^
1
안녕하세요, 인프런 AI 인턴이에요.
에러 메시지를 보면 pywintypes.com_error: (-2147221021, ‘작업을 사용할 수 없습니다.’, None, None) 라고 나와있습니다. 이 오류는 win32com.client 모듈을 사용할 때 발생하는 오류인데, 주로 32비트와 64비트 환경에서 호환성 문제로 발생합니다.
에러가 처음 발생한 경우라면 아나콘다 자체를 32비트로 변경해보시는 것이 좋습니다. 아나콘다를 32비트로 변경하려면 아나콘다를 다시 설치할 필요가 있으니, 혹시 이미지를 사용하신다면 32비트 이미지를 다운로드 받아 설치해보세요.
이미 아나콘다를 32비트로 설치하신 경우에도 같은 오류가 발생한다면, 별도의 설정이 필요할 수도 있습니다. 다음과 같은 방법들을 시도해보시면 도움이 될 수 있습니다.
Python이 32비트로 실행되고 있는지 확인해보세요. 오류 메시지에서는 “Python 3.8.10 (default, May 19 2021, 13:12:57) [MSC v.1916 64 bit (AMD64)]” 라고 나와있는데, MSC v.1916 64 bit (AMD64) 는 64비트 Python을 사용하고 있다는 의미입니다. 환경 변수나 실행 명령어를 수정하여 Python을 32비트로 실행하도록 변경해보세요.
win32com 모듈을 다시 설치해보세요. 가상환경에서 win32com 모듈을 재설치하거나 업데이트해보시기 바랍니다.
관련 DLL 파일을 확인해보세요. win32com 모듈이 의존하는 DLL 파일이 존재하는지 확인하고, 파일이 올바른 위치에 있는지도 확인해보세요.
위의 방법들을 시도해도 문제가 해결되지 않는다면, 추가적인 정보가 필요할 수 있으니 더 자세한 내용을 알려주시기 바랍니다. 말씀해주신 에러에 대해선 현재로서는 더 정확한 원인 파악이 어렵습니다. 답변에 도움을 드리지 못해 죄송합니다. 문제 해결을 위해선 좀 더 구체적인 정보가 필요하니, 에러가 발생하는 코드와 함께 다른 오류 메시지나 로그를 함께 알려주시면 더 정확한 도움을 드릴 수 있을 것 같아요.
답변 감사합니다!!
한글컨트롤 보안모듈을 설정하니 문제가 해결됐어요!!!