如何使用python创建com对象

如何使用python创建com对象,python,com,Python,Com,在VisualStudio中,有一个注册为互操作COM的选项。我想用python语言实现同样的功能。如果有人能帮我解决这个问题。我做了研究,但什么也没找到 就像上面我的同名评论一样。使用模块。或者,您也可以使用该模块。因为python是一种解释语言,所以可以用两种不同的方式使用COM。通过生成互操作性层或通过动态键入。comtypes和pywin32都可以进行动态键入。此外,pywin32的win32com模块还可以生成互操作层,这有一个缺点,因为动态类型通常更容易处理。下面是一个在excel中

在VisualStudio中,有一个注册为互操作COM的选项。我想用python语言实现同样的功能。如果有人能帮我解决这个问题。我做了研究,但什么也没找到

就像上面我的同名评论一样。使用模块。或者,您也可以使用该模块。因为python是一种解释语言,所以可以用两种不同的方式使用COM。通过生成互操作性层或通过动态键入。comtypes和pywin32都可以进行动态键入。此外,pywin32的win32com模块还可以生成互操作层,这有一个缺点,因为动态类型通常更容易处理。下面是一个在excel中生成类似互操作的兼容层(如果不存在)的简单示例。然后,脚本打开现有工作表并编辑第一个单元格值:

from win32com.client.gencache import EnsureDispatch

xl = EnsureDispatch ("Excel.Application")
xl.Visible = True
wb = xl.Workbooks.Open(r'c:\temp\test.xlsx')
sht = wb.Worksheets(1)
sht.Cells(1,1).Value = "yeah this works"

PS:堆栈溢出已经自动在相关侧栏中为您推荐了大量资源

就像上面我的同名评论一样。使用模块。或者,您也可以使用该模块。因为python是一种解释语言,所以可以用两种不同的方式使用COM。通过生成互操作性层或通过动态键入。comtypes和pywin32都可以进行动态键入。此外,pywin32的win32com模块还可以生成互操作层,这有一个缺点,因为动态类型通常更容易处理。下面是一个在excel中生成类似互操作的兼容层(如果不存在)的简单示例。然后,脚本打开现有工作表并编辑第一个单元格值:

from win32com.client.gencache import EnsureDispatch

xl = EnsureDispatch ("Excel.Application")
xl.Visible = True
wb = xl.Workbooks.Open(r'c:\temp\test.xlsx')
sht = wb.Worksheets(1)
sht.Cells(1,1).Value = "yeah this works"
import win32com.server.register
   win32com.server.register.UseCommandLine(ClassName)

PS:堆栈溢出已经自动在相关侧栏中为您推荐了大量资源

你是否发现,虽然这似乎不是一个好的SO问题,但寻求这个问题答案的人肯定会被带到这个页面。我投赞成票!你是否发现,虽然这似乎不是一个好的SO问题,但寻求这个问题答案的人肯定会被带到这个页面。我投赞成票!
import win32com.server.register
   win32com.server.register.UseCommandLine(ClassName)