[pywin32-bugs] [ pywin32-Bugs-3058134 ] Problems with ACL Table, missing IID_IExchangeModifyTable
OLD project page for the Python extensions for Windows
Brought to you by:
mhammond
From: SourceForge.net <no...@so...> - 2010-10-25 14:52:03
|
Bugs item #3058134, was opened at 2010-09-02 14:01 Message generated for change (Comment added) made by marquies You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=551954&aid=3058134&group_id=78018 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: win32 Group: None Status: Open Resolution: None Priority: 5 Private: No Submitted By: Patrick Breucking (marquies) Assigned to: Nobody/Anonymous (nobody) Summary: Problems with ACL Table, missing IID_IExchangeModifyTable Initial Comment: Hi, while try to read the ACL Table of a folder, I ran into this problem: In a C++ tool (MFCMAPI) this method is used to get the Property PR_ACL_TABLE in a usable data type: // Open the table in an IExchangeModifyTable interface EC_H(lpMAPIProp->OpenProperty( ulPropTag, (LPGUID)&IID_IExchangeModifyTable, 0, MAPI_DEFERRED_ERRORS, (LPUNKNOWN FAR *)&lpExchTbl)); I figured out to do this in python: table = mystore.OpenProperty(mapitags.PR_ACL_TABLE, IID_IExchangeModifyTable, 0 , mapi.MAPI_DEFERRED_ERRORS) But it seems that the MAPI Extension does not know the IID_IExchangeModifyTable type. I just got just this error: AttributeError: 'module' object has no attribute 'IID_IExchangeModifyTable' Maybe I'm wrong, but as far as i can say the MAPI Extension is incomplete in this point, or? Thanks - Marquies ---------------------------------------------------------------------- Comment By: Patrick Breucking (marquies) Date: 2010-10-25 16:52 Message: No problem, I'm still adding some stuff for the rules. The first one are easy changes, the tuple change need some time ;) I have a problem to compile the exchange part because of missing libs. ("exchange: No library 'Ex2KSdk'") Could you give me a hint what to do? I will then move the changes, compile and test. Thanks a lot. ---------------------------------------------------------------------- Comment By: Mark Hammond (mhammond) Date: 2010-10-23 03:00 Message: Sorry for the delay in looking at this. It seems that the changes to mapilib.i and mapiutil should really go in exchange.i. There are a few issues in PyMAPIObject_AsROWLIST: * The error message needs updating (ie, it refers to SRowSet etc instead of ROWLIST), * The line in the 'done:' label + if (!rc && (ppResult)) { should be: + if (!rc && (*ppResult)) { * The reference counting of 'rowEntries' and 'rowObject' are wrong. + rowEntries = NULL; + rowObject = NULL; // important for cleanup both of these should Py_DECREF() the objects before nulling them (it looks like there is a bug in PyMAPIObject_AsSRowSet, which you copied this from. Further, 'rowEntries' isn't checked for NULL and will crash if you pass a dict without an 'entries' element, and isn't Py_DECREF's in done: * You should probably treat a ROWENTRY object as a simple tuple instead of a dict, to be consistent with the other mapi helpers. It would be great if you could address these and I'd be happy to integrate it. Also, the line: ---------------------------------------------------------------------- Comment By: Patrick Breucking (marquies) Date: 2010-09-28 17:55 Message: Please have a look into the path and the other attached files. You also need some more header files from the SDK to compile. Feedback welcome. ---------------------------------------------------------------------- Comment By: Patrick Breucking (marquies) Date: 2010-09-16 13:08 Message: I started to write the code for this interface, the swig interface additions and some utility code for type conversions. I would appreciate if this additions would go into the repository. What do you think? - Marquies ---------------------------------------------------------------------- Comment By: Mark Hammond (mhammond) Date: 2010-09-02 15:15 Message: Yes - it is incomplete, at least wrt that interface. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=551954&aid=3058134&group_id=78018 |