Hi all! I'm new to python and I seem to have a hit a of a brick wall. I hope you guys can help.
I'm trying to rewrite some of my vbscripts in python. This particular script connects to a mailbox in MS Exchange via ADO and calculates the mailbox size. I seem to have run into a couple of issues getting python to talk to MS Exchange via ADO though. This is the code i'm using: from win32com.client import Dispatch conn = Dispatch('ADODB.Connection') conn.ConnectionString = "URL=http://ctmx01/exchange/warren.ali" conn.Open() rs = Dispatch('ADODB.RecordSet') rs.ActiveConnection = conn rs.Open("Select http://schemas.microsoft.com/exchange/foldersize from scope ('deep traversal of http://ctex01/exchange/warren.ali')", conn.ConnectionString) But running the code, all i get is this error message: Traceback (most recent call last): File "C:\Python24\ad.py", line 12, in -toplevel- rs.Open("Select http://schemas.microsoft.com/exchange/foldersize from scope ('deep traversal of http://ctex01/exchange/warren.ali')", conn.ConnectionString) File "C:\Python24\lib\site-packages\win32com\gen_py\2A75196C-D9EB-4129-B803-931327F72D5Cx0x2x8\_Recordset.py", line 93, in Open return self._oleobj_.InvokeTypes(1022, LCID, 1, (24, 0), ((12, 17), (12, 17), (3, 49), (3, 49), (3, 49)),Source, ActiveConnection, CursorType, LockType, Options) com_error: (-2147352567, 'Exception occurred.', (0, None, '', None, 0, -2147217900), None) Does anyone have any suggestions? I've kinda put the code together based on this tutorial: http://www.mayukhbose.com/python/ado/index.php but cant seem to adapt it to talk to exchange This is the code that works via vbscript http://support.microsoft.com/kb/2913 Set Rec = CreateObject("ADODB.Record") Set Rs = CreateObject("ADODB.Recordset") strURL = "http://exchangeserver/exchange/warren.ali" Rec.Open strURL sSQL = "Select" sSQL = sSQL & " ""http://schemas.microsoft.com/exchange/foldersize"" " 'sSQL = sSQL & ", ""DAV:displayname"" " sSQL = sSQL & " from scope ('deep traversal of " & Chr(34) sSQL = sSQL & strURL & Chr(34) & "')" 'sSQL = sSQL & "Where ""DAV:isfolder""=true" ' Open the recordset. Rs.Open sSQL, Rec.ActiveConnection Thanks!! -- Keeping it (sur)real since 1981. (now in print:http://thinkingmachine.blogsome.com) -- http://mail.python.org/mailman/listinfo/python-list