Hi everyone!
I'm trying to automate an operation with Alibre Design (http://www.alibre.com) via COM.

It is mostly working, except for a call to a method that accepts a single optional boolean parameter. When I try to call this method, I get an "Invalid number of parameters" exception.

Here's my code:

----------------

import win32com.client
import pywintypes

try:
    # Check if Alibre is already running
    h = win32com.client.GetObject(Class="AlibreX.AutomationHook")
except pywintypes.com_error:
    h = win32com.client.Dispatch("AlibreX.AutomationHook")
    h.Initialize("", "", "", False, 0)
root = h.Root

# Open a file and get its mass

f = root.OpenFile(path_to_file)
d = win32com.client.CastTo(f, "IADDesignSession")
mass = d.PhysicalProperties(2).Mass
f.Close()

----------------

The exception is triggered from the last call.. makepy generates it in this way:

----------------

def Close(self, saveSession=False):
"""Closes the session and saves the modified session and sub-sessions, if any, to their original folder locations, if the saveSession flag is set to true. Use SaveNew or SaveAs if this session is being saved for the first time""" return self._oleobj_.InvokeTypes(7, LCID, 1, (24, 0), ((11, 49),),saveSession )

----------------

This matches the documentation of Alibre's API, and what I get when I try to inspect the corresponding DLL using Reflector.

Any idea on what I could try?

Thanks for your time!

(Python 2.6.2, pywin32-214, windows XP)
_______________________________________________
python-win32 mailing list
python-win32@python.org
http://mail.python.org/mailman/listinfo/python-win32

Reply via email to