Any Replacement for CDO and MAPI ?

L

Ladan

Hi,

I need to rewrite an application originally written for office 2003 (VBA).

It is an Access 2003 application that reads and parses email allerts from

outlook mailbox and puts the extracted info into Access database table. It

references CDO 1.2.1 .

As our company is going to use Exchange 2007, I need to rewrite this app, so

that it does not reference this library anymore and works fine with Exchange

server 2007. My company wants to get this application work without using CDO

and MAPI.

As CDO and MAPI is being eliminated eventualy, I need to know what is the

substitute for them.

I have done some googling and found Outlook Object Model and Exchange Web

Services. But I'm not quite sure which one to use, and if there is any better

option for me. Here is some lines of code that uses CDO:

Public objSession As MAPI.Session

Set objSession = CreateObject("MAPI.Session")

objSession.Logon ProfileInfo:=server & vbLf & mailBoxName ....

I need to be able to logon to a mailbox on server from any client machine.

I would appreciate if you can help me with this problem.
 
K

Ken Slovak - [MVP - Outlook]

That all depends on where you want the code to run. If Outlook is installed

you can use the Outlook object model but you don't ever want to install

Outlook or Office on an Exchange server machine. Using Exchange Web services

is out of scope for an Outlook group, ask in an Exchange development group.

And CDO is still there and can still be used with Exchange 2007, and

Extended MAPI is in no way going away, it would destroy Exchange and

Outlook.

"Ladan" <Ladan> wrote in message

news:4153282B-3F4D-4FE8-A3B5-42BF576B6BB9@microsoft.com...
> Hi,
> I need to rewrite an application originally written for office 2003 (VBA).
> It is an Access 2003 application that reads and parses email allerts from
> outlook mailbox and puts the extracted info into Access database table. It
> references CDO 1.2.1 .
> As our company is going to use Exchange 2007, I need to rewrite this app,
> so
> that it does not reference this library anymore and works fine with
> Exchange
> server 2007. My company wants to get this application work without using
> CDO
> and MAPI.

> As CDO and MAPI is being eliminated eventualy, I need to know what is the
> substitute for them.
> I have done some googling and found Outlook Object Model and Exchange Web
> Services. But I'm not quite sure which one to use, and if there is any
> better
> option for me. Here is some lines of code that uses CDO:

> Public objSession As MAPI.Session

> Set objSession = CreateObject("MAPI.Session")

> objSession.Logon ProfileInfo:=server & vbLf & mailBoxName ....

> I need to be able to logon to a mailbox on server from any client machine.

> I would appreciate if you can help me with this problem.

>
 
L

Ladan

Thanks for your reply.

My code is in an access application, running on client machine with outlook

2007 installed. It is supposed to access a mailbox other than the user's

mailbox on Exchenge server (2003) , and process some email allerts. It is

currently using CDO.dll but out company do not want that.

So you mean if I use Extended MAPI library, I can perform a logon like what

I do in CDO (e.g objSession.Logon ProfileInfo:=server & vbLf & mailBoxName

> ....)?

I would appreciate if you send me any sample code in this regard.

Thanks

Ladan
 
D

Dmitry Streblechenko

You can access other users mailboxes using Namespace.GetSharedDefaultFolder

in teh Outlook Object Model.

<plug> Reemption (url) below exposes RDOSession.GetSharedMailbox and

RDOSession.GetSharedDefaultFolder and works in any version of Outlook

</plug

Dmitry Streblechenko (MVP)

-

"Ladan" <Ladan> wrote in message

news:451E5A18-4434-4539-82D2-3C9D32401EFC@microsoft.com...

> Thanks for your reply.
> My code is in an access application, running on client machine with
> outlook
> 2007 installed. It is supposed to access a mailbox other than the user's
> mailbox on Exchenge server (2003) , and process some email allerts. It is
> currently using CDO.dll but out company do not want that.

> So you mean if I use Extended MAPI library, I can perform a logon like
> what
> I do in CDO (e.g objSession.Logon ProfileInfo:=server & vbLf & mailBoxName
> ....)?

> I would appreciate if you send me any sample code in this regard.

> Thanks
> Ladan

>
 
L

Ladan

Thanks for your reply.

Using Namespace.GetSharedDefaultFolder in OOM , I can open a shared folder

like a shared calander, but I need to access other mailboxes and be prompted

for user and password.

Regarding redemption, will there be support for it in exchange 2007 and 2010?

Regards,
 
K

Ken Slovak - [MVP - Outlook]

If you want to use Extended MAPI you will need to research the code you will

need, but be aware that Extended MAPI won't work in any managed code (only

C++ or Delphi) and has a long learning curve unless you already know how to

program Extended MAPI.

I personally would use Redemption, which I use all the time for things like

that (www.dimastr.com/redemption).

"Ladan" <Ladan> wrote in message

news:451E5A18-4434-4539-82D2-3C9D32401EFC@microsoft.com...

> Thanks for your reply.
> My code is in an access application, running on client machine with
> outlook
> 2007 installed. It is supposed to access a mailbox other than the user's
> mailbox on Exchenge server (2003) , and process some email allerts. It is
> currently using CDO.dll but out company do not want that.

> So you mean if I use Extended MAPI library, I can perform a logon like
> what
> I do in CDO (e.g objSession.Logon ProfileInfo:=server & vbLf & mailBoxName
> ....)?

> I would appreciate if you send me any sample code in this regard.

> Thanks
> Ladan

>
 
D

Dmitry Streblechenko

Why do you need to be prompted for the user name and password?

Redemption fully supports Exchange 2007 and it will support Exchange 2010.

Dmitry Streblechenko (MVP)

-

"Ladan" <Ladan> wrote in message

news:55DE1DED-60A1-4EA2-B8CD-C11466C4EF83@microsoft.com...
> Thanks for your reply.

> Using Namespace.GetSharedDefaultFolder in OOM , I can open a shared
> folder
> like a shared calander, but I need to access other mailboxes and be
> prompted
> for user and password.

> Regarding redemption, will there be support for it in exchange 2007 and
> 2010?

> Regards,
>
 

Similar threads

Top