exchange web services 2007 - How do I query a mailbox which is not the default for user ?

I am using the code snippet to access Exchange Web Services (EWS) and get a bunch of messages from Inbox, which are then moved to the Deleted Items Folder, in some other piece of code.
This is a C# Windows Service that has included the EWS definitions as a web reference.

All is working flawlessly, excepto for the fact that while using this same user, do the same kind of stuff to other mailboxes to which he also access, but are not his default one.

The Ideal would be the existance of a property that would just need to receive the mailbox name or email address:) But I am beginning to believe that cannot be done.

Thank you
exchangeServer = new xx.xxx.mpost.ExchangeServiceBinding();
exchangeServer.Url = "https://mpost.xxx.xx/ews/exchange.asmx";
System.Net.ICredentials creds = new System.Net.NetworkCredential(mailboxuser, mailboxpwd, "");
exchangeServer.Credentials = creds;
 
xx.xxx.mpost.FindItemType fit = new xx.xxx.mpost.FindItemType();
fit.Traversal = xx.xxx.mpost.ItemQueryTraversalType.Shallow;
xx.xxx.mpost.DistinguishedFolderIdType[] folderIDs = new xx.xxx.mpost.DistinguishedFolderIdType[1];
folderIDs[0] = new xx.xxx.mpost.DistinguishedFolderIdType();
folderIDs[0].Id = xx.xxx.mpost.DistinguishedFolderIdNameType.inbox;
fit.ParentFolderIds = folderIDs;
xx.xxx.mpost.ItemResponseShapeType irst = new xx.xxx.mpost.ItemResponseShapeType();
irst.BaseShape = xx.xxx.mpost.DefaultShapeNamesType.AllProperties;
fit.ItemShape = irst;
xx.xxx.mpost.FindItemResponseType firt = exchangeServer.FindItem(fit);

Open in new window

ApagadorAsked:
Who is Participating?
 
ApagadorConnect With a Mentor Author Commented:
Sorry for taking so long to answer.

Actually, I am not trying to use OWA, but actually EWS from within my own application, so the advice will not function.

On the bright side, I managed to do it myself, so I'm posting the answer here, the code that must be imbued withing the code I alredy posted.

Thanks, anyway..
pt.eap.mpost.EmailAddressType eat = new pt.eap.mpost.EmailAddressType();
eat.EmailAddress = "testemail@domain.com";
folderIDs[0].Mailbox = eat;

Open in new window

0
 
aa230002Connect With a Mentor Commented:
I am not very familiar with this code but would like to share a simple rule to access someone else mailbox using Outlook Web Access, which may help.

1. In case you want to access your own mailbox using Outlook web access, you will use
https://<exchange_server>/exchange
and then login your own credentials and it will open the mailbox of the user whose credentials are used.

2. In case you want to access someone else's mailbox, you will use
https://<exchange_server>/Exchange/<other_user>@domain.com
and then login using your own credentials (as you have access on other_user's mailbox.

Hope it helps.
-Amit
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.