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 = ‘[email protected]’
logonParam = “ProfileInfo:=”+ exchangeServer + “\r” + mailbox
mapiSession.Logon(logonParam)
the rest of the code…
However the Logon method throws the following set of exceptions.
First I get a pop-up dialog stating that the Profile Name contains
invalid characters.
From the above link: “The ProfileInfo is a string that consists of
three parts. The first is the name of the Exchange Server. The second
is always a linefeed character.”
I think part of my problem is I’m not getting the correct character in
as the linefeed. Can someone validate that? Maybe I’m missing and
easy Ruby trick to add a linefeed to a string?
The other exception is as follows:
Logon
OLE error code:1087 in Collaboration Data Objects
[Collaboration Data Objects - [E_INVALIDARG(80070057)]]
HRESULT error code:0x80020009
Exception occurred.
C:/devenv/Client
Application/RubyReplacement/ExampleOutlookScript.rb:13:in
method_missing' C:/devenv/Client Application/RubyReplacement/ExampleOutlookScript.rb:13 C:/devenv/Client Application/RubyReplacement/ExampleOutlookScript.rb:13:in
method_missing’: Logon (WIN32OLERuntimeError)
OLE error code:1087 in Collaboration Data Objects
[Collaboration Data Objects - [E_INVALIDARG(80070057)]]
HRESULT error code:0x80020009
Exception occurred.
Which I think is the result of the first error.
thanks,