你怎么能让cygwin在Win 7操作系统的python程序中使用pywin32库的一个组件? (假设使用了python 2.7版)

时间:2014-04-16 23:11:58

标签: python cygwin pywin32

下面是一个示例代码,我希望使用cygwin来运行Windows 7来执行简单搜索并替换AutoCad绘图中的文本:

import sys
import win32com.client
from sys import argv
from win32com.client import Dispatch
acad = win32com.client.Dispatch("AutoCAD.Application")

doc = acad.ActiveDocument   # Document object
ms = doc.ModelSpace         # Modelspace "collection"
count = ms.Count            # Number of items in modelspace

for i in range(count):
    item = ms.Item(i)
    if 'text' in item.ObjectName.lower(): # Text objects are AcDbText
        # once we know what it is we can cast it
        text = win32com.client.CastTo(item, "IAcadText") 
        if text.TextString == "Spam":
            text.TextString = "Maps"
            text.Update()import win32com.client
acad = win32com.client.Dispatch("AutoCAD.Application")

doc = acad.ActiveDocument   # Document object
ms = doc.ModelSpace         # Modelspace "collection"
count = ms.Count            # Number of items in modelspace

for i in range(count):
    item = ms.Item(i)
    if 'text' in item.ObjectName.lower(): # Text objects are AcDbText
        # once we know what it is we can cast it
        text = win32com.client.CastTo(item, "IAcadText") 
        if text.TextString == "Spam":
             text.TextString = "Maps"
             text.Update()

1 个答案:

答案 0 :(得分:1)

我认为你不能这样做,因为pywin32与Cygwin不兼容。

请参阅:http://sourceforge.net/p/pywin32/mailman/pywin32-bugs/thread/From_noreply@sourceforge.net_Fri_May_10_22:50:41_2013/

您可以通过安装非Cygwin Python(如ActiveState,WinPython等)来解决此问题。