Mark Cederholm has a presentation on accessing arcobjects from python. It requires Visual Studio (Express is ok) and the Windows SDK in addition to arcgis and python.
Recipe
- Download and install WinSDk and Visual Studio.
- Unpack Mark's package somewhere
- Edit
DemoTool.idl
if necessary (e.g. path to esriSystemUI.olb) - Open the WinSDK CMD shell and run
midl DemoTool.idl
(creates DemoTool.tbl needed for registering COM objects) - Register the com objects with
python DemoTool.py -regserver
You are now ready to access arcobjects with python:
from Snippets import GetLibPath, InitStandalone
from comtypes.client import GetModule, CreateObject
m = GetModule(GetLibPath() + "esriGeometry.olb")
InitStandalone()
p = CreateObject(m.Point, interface=m.IPoint)
p.PutCoords(2,3)
print p.X, p.Y