While I was explaining it to a co-worker, I stumbled upon a weird
feature of the VB OLE call.  The VB OLE call can do a weird
short-circuit and not need the other parameters.

If I change the call to Logon to mapiSession.Logon(nil, nil, nil, nil,
nil, nil, logonParam), it doesn't give me the first set of dialogs
complaining about the invalid charaters, but I still get the 1087
error.  Maybe some of the other fields need to not be nil?

thanks,

On 3/28/06, Tanner Burson <tanner.burson / gmail.com> wrote:
> On 3/28/06, Keith Sader <ksader / gmail.com> wrote:
> >
> > I'm trying to read a remote mail store using the CDO OLE interface
> > using the ProfileInfo interface as described here:
> > http://www.vbip.com/books/1861002068/chapter_2068_04.asp, but I've run
> > into the wall of my own ignorance.
> >
> > Here's what I have so far:
> >
> > # Ruby code
> > require 'win32ole'
> >
> > mapiSession = WIN32OLE::new('MAPI.Session')
> >
> > #load MAPI constants
> > class MapiConst
> > end
> > WIN32OLE.const_load(mapiSession, MapiConst)
> >
> > exchangeServer = 'myServer
> > mailbox = 'mail / foo.com'
> > logonParam = "ProfileInfo:="+ exchangeServer + "\r" + mailbox
> > mapiSession.Logon(logonParam)
> > # the rest of the code...


--
Keith Sader
ksader / gmail.com
http://www.saderfamily.org/roller/page/ksader