누구나 Autocad에서 Python을 사용해 본 경험이 있습니까? 나는 Python을 통해 Autocad의 새로운 인스턴스를 열 수 있는지, 그리고 PyAutocad가 잘 작동 하는지를 테스트하기 위해 노력 중이다. (어떤 제안이라도 있으면 다른 제안을해라.)Python을 통해 Autocad의 새로운 인스턴스 열기
어쨌든 doc을 기반으로한다. (https://pypi.python.org/pypi/pyautocad/#downloads) -이 코드 라인은 그렇게해야한다고 말하고 있지만 아직까지는 아무 것도 일어나지 않았습니다.
from pyautocad import Autocad, APoint
acad = Autocad()
acad.prompt("Hello, Autocad from Python\n"
그냥 코드 줄은 명령 줄에 대한 정보를 생성해야하지만 대신에 (나뿐만 아니라 누구나 관심이 있다면 게시 할 수 있습니다) 추적의 가치가 약 50 라인 결과 - 어떤 아이디어?
Traceback (most recent call last):
File "<pyshell#5>", line 1, in <module>
acad.prompt("Hello, Autocad")
File "C:\Python27\lib\site-packages\pyautocad\api.py", line 153, in prompt
self.doc.Utility.Prompt(u"%s\n" % text)
File "C:\Python27\lib\site-packages\pyautocad\api.py", line 65, in doc
return self.app.ActiveDocument
File "C:\Python27\lib\site-packages\pyautocad\api.py", line 54, in app
self._app = comtypes.client.GetActiveObject('AutoCAD.Application')
File "C:\Python27\lib\site-packages\comtypes\client\__init__.py", line 180, in GetActiveObject
obj = comtypes.GetActiveObject(clsid, interface=interface)
File "C:\Python27\lib\site-packages\comtypes\__init__.py", line 1165, in GetActiveObject
oledll.oleaut32.GetActiveObject(byref(clsid), None, byref(p))
File "_ctypes/callproc.c", line 941, in GetResult
WindowsError: [Error -2147221021] Operation unavailable
VBA를 모듈을 추가 한 후, 역 추적은 이제 읽
이제Traceback (most recent call last):
File "<pyshell#4>", line 1, in <module>
acad.prompt("Hello")
File "C:\Python27\lib\site-packages\pyautocad\api.py", line 153, in prompt
self.doc.Utility.Prompt(u"%s\n" % text)
File "C:\Python27\lib\site-packages\pyautocad\api.py", line 65, in doc
return self.app.ActiveDocument
File "C:\Python27\lib\site-packages\pyautocad\api.py", line 54, in app
self._app = comtypes.client.GetActiveObject('AutoCAD.Application')
File "C:\Python27\lib\site-packages\comtypes\client\__init__.py", line 183, in GetActiveObject
return _manage(obj, clsid, interface=interface)
File "C:\Python27\lib\site-packages\comtypes\client\__init__.py", line 188, in _manage
obj = GetBestInterface(obj)
File "C:\Python27\lib\site-packages\comtypes\client\__init__.py", line 112, in GetBestInterface
interface = getattr(mod, itf_name)
AttributeError: 'module' object has no attribute 'IAcadApplication'
@reclosedev 당 comtypes ' "세대"폴더를 삭제 한 후, AutoCAD가 지금 여전히 텍스트 문자열 열리지 만하지 않습니다 명령 줄에 표시 - 역 추적 읽기 :
Traceback (most recent call last):
File "<pyshell#4>", line 1, in <module>
acad.prompt("Hello")
File "C:\Python27\lib\site-packages\pyautocad\api.py", line 153, in prompt
self.doc.Utility.Prompt(u"%s\n" % text)
File "C:\Python27\lib\site-packages\pyautocad\api.py", line 65, in doc
return self.app.ActiveDocument
File "C:\Python27\lib\site-packages\pyautocad\api.py", line 59, in app
self._app.Visible = self._visible
File "C:\Python27\lib\site-packages\comtypes\client\dynamic.py", line 116, in __setattr__
dispid = self._comobj.GetIDsOfNames(name)[0]
File "C:\Python27\lib\site-packages\comtypes\automation.py", line 643, in GetIDsOfNames
self.__com_GetIDsOfNames(riid_null, arr, len(names), lcid, ids)
COMError: (-2147418111, 'Call was rejected by callee.', (None, None, None, 0, None))
추적이 도움이 될 것입니다. 나는이 질문을 읽는 대다수의 사람들이 AutoCAD를 설치하지 않았기 때문에 귀하가 게시 한 코드를 테스트 할 수 없을 것이라고 말했습니다. –
Gotcha, 그 점에 대해서 미안하다. 역 추적도있다. Thanks @JosephDunn – prestonsmith
어떤 AutoCAD 버전을 사용합니까? LT가 아닌지 확인하십시오. 또한 2010보다 높은 경우 [AutoCAD VBA 모듈] (http://usa.autodesk.com/adsk/servlet/item?siteID=123112&id=12715668&linkID=9240618)을 설치해야합니다. – reclosedev