Quantcast
Channel: Exchange Server Development forum
Viewing all 7132 articles
Browse latest View live

Exchange 2010 Failed index error

$
0
0

The site contains three servers, two of which are running Exchange 2010 and both are DC's. The third server is only a witness server. The databases on one of the servers (named Primary5) fails to mount with the error:

--------------------------------------------------------
Microsoft Exchange Error
--------------------------------------------------------
Failed to mount database 'Mailbox Database 1580047370'.

Mailbox Database 1580047370
Failed
Error:
Couldn't mount the database that you specified. Specified database: Mailbox Database 1580047370; Error code: An Active Manager operation failed. Error The database action failed. Error: The Microsoft Exchange Replication service may not be running on server PRIMARY5.DomainName.COM. Specific RPC error message: Error 0x6ba (The RPC server is unavailable) from cli_AmMountDatabaseDirect3. [Database: Mailbox Database 1580047370, Server: PRIMARY6.DomainName.COM].

An Active Manager operation failed. Error The database action failed. Error: The Microsoft Exchange Replication service may not be running on server PRIMARY5.DomainName.COM. Specific RPC error message: Error 0x6ba (The RPC server is unavailable) from cli_AmMountDatabaseDirect3. [Database: Mailbox Database 1580047370, Server: PRIMARY6.DomainName.COM]

An Active Manager operation failed. Error The Microsoft Exchange Replication service may not be running on server PRIMARY5.DomainName.COM. Specific RPC error message: Error 0x6ba (The RPC server is unavailable) from cli_AmMountDatabaseDirect3.

Error 0x6ba (The RPC server is unavailable) from cli_AmMountDatabaseDirect3

I have tired the following steps:

1. I can ping the DAG

2. Checked to make sure that replication services were running

3. Ran the following commands from the exchange shell:

[PS] C:\Windows\system32>Get-MailboxDatabaseCopyStatus

Name                                          Status          CopyQueue ReplayQueue LastInspectedLogTime   ContentIndex
                                                              Length    Length                             State
----                                          ------          --------- ----------- --------------------   ------------
Mailbox Database 1580047370\PRIMARY5          Dismounted      0         0                                  Failed
MDB01\PRIMARY5                                Healthy         0         1           12/3/2013 2:16:03 PM   Healthy
MBD02\PRIMARY5                                Healthy         0         0           11/30/2013 12:34:09 AM Healthy

[PS] C:\Windows\system32>Get-MailboxDatabaseCopyStatus | ?{$_.ContentIndexState -eq "Failed"} | Update-MailboxDatabaseCo
py -CatalogOnly
Database "Mailbox Database 1580047370\PRIMARY5" has only one copy. This task is supported only for databases that have
more than one copy.

Not at all sure what to try next.

Thank you for any assistance you can give me.


Ronald C. Pope


Auto Junk email folder creation in Outlook

$
0
0

Hi All,

We do have an user having problems with his outlook. A folder named "Junk Emails" (Not Standard Junk Email folder) is being auto created under the Inbox folder and its filtering emails from a particular internal email ID. Looking weird , This folder is not available while accessing Webmail for the same user.

Outlook Version 2007 SP1, Operating system - Windows 7 64 bit.

We have tried the following steps to get this fixed in outlook.

1. Added that particular internal Email ID to safe sender list, Safe recipients list etc. in Junk email options

2. Created outlook rule to forward that emails to inbox folder. 

3. Added that particular email ID in contacts

4. Altered Junk email options in webmail too

5. Recreated his outlook Profile after resetting outlook settings.

6. Tried by deleting that junk folder after moving all emails to inbox.

We have not found any fix for this till now. Could anyone please help on this?

Thanks in advance

 


EWS - retrieving PR_STORE_ENTRYID value

$
0
0

Hi,

I am trying to retrieve PR_STORE_ENTRYID value on a mailbox.

Here is the code snippet.

var ourProps = new PropertySet(BasePropertySet.IdOnly);
            var PR_STORE_ENTRYID = new ExtendedPropertyDefinition(4091, MapiPropertyType.Binary);
            ourProps.Add(PR_STORE_ENTRYID);
            Folder rootFolder = Folder.Bind(service, WellKnownFolderName.Root, ourProps);
                                  object propVal = null;
            if (rootFolder.TryGetProperty(PR_STORE_ENTRYID, out propVal))
            {

                // blablabalba

            }


The byte array that EWS returns me is 124 bytes.

Here is the converted string:

0000000038A1BB1005E5101AA1BB08002B2A56C20000454D534D44422E444C4C00000000000000001B55FA20AA6611CD9BC800AA002FC45A0C0000006578323031332D62652D30312E6C61627A65726F2E6D316465762E636F6D0045DC3FDD3E452141997812ED19A12EF55926AE630700304EAD87CD5D218DE025

While OutlookSpy and MfcMAPI show that PR_STORE_ENTRYID has 244 bytes.

0000000038A1BB1005E5101AA1BB08002B2A56C20000454D534D44422E444C4C00000000000000001B55FA20AA6611CD9BC800AA002FC45A0C00000064643366646334352D343533652D343132312D393937382D313265643139613132656635406C61627A65726F2E6D316465762E636F6D002F6F3D456D734465764F7267616E697A6174696F6E2F6F753D45786368616E67652041646D696E6973747261746976652047726F7570202846594449424F484632335350444C54292F636E3D526563697069656E74732F636E3D62326531343437353635346534393331386562353136323037646238646439302D41646D696E00

I am not sure why EWS returns different byte array value.

Does anyone know why this is the case?

Thanks.

Exchange Server 2010 SP1 with Windows Server 2012 R2

$
0
0

Hi,

We have an Exchange Server 2010 SP1 organization on a Windows server 2008 R2 Domain is-it possible to upgrade the domain to Windows Server 2012 R2?

Regards,

Mohamed


Mohamed BEN CHAABENE

Exchange Web Service - error while moving mail to other folder

$
0
0

Getting below error.  Some time working fine some time error - while move mail to other folder

Microsoft.Exchange.WebServices.Data.ServiceResponseException: The specified object was not found in the store.
   at Microsoft.Exchange.WebServices.Data.ServiceResponse.InternalThrowIfNecessary()
   at Microsoft.Exchange.WebServices.Data.MultiResponseServiceRequest`1.Execute()
   at Microsoft.Exchange.WebServices.Data.ExchangeService.InternalMoveItems(IEnumerable`1 itemIds, FolderId destinationFolderId, Nullable`1 returnNewItemIds, ServiceErrorHandling errorHandling)
   at Microsoft.Exchange.WebServices.Data.ExchangeService.MoveItem(ItemId itemId, FolderId destinationFolderId)
   at Microsoft.Exchange.WebServices.Data.Item.Move(FolderId destinationFolderId)
   at ExchangeAutoReplyService.Business.ExchangeAutoReply.MoveToSuspectAutoReplyFolder(ExchangeService service))

Getting below error. EmailMessage current = EmailMessage.Bind(service, id); - while binding

Some time works fine some time throws error as follows :

Microsoft.Exchange.WebServices.Data.ServiceResponseException: The specified object was not found in the store.
   at Microsoft.Exchange.WebServices.Data.ServiceResponse.InternalThrowIfNecessary()
   at Microsoft.Exchange.WebServices.Data.MultiResponseServiceRequest`1.Execute()
   at Microsoft.Exchange.WebServices.Data.ExchangeService.InternalBindToItems(IEnumerable`1 itemIds, PropertySet propertySet, ServiceErrorHandling errorHandling)
   at Microsoft.Exchange.WebServices.Data.ExchangeService.BindToItem(ItemId itemId, PropertySet propertySet)
   at Microsoft.Exchange.WebServices.Data.ExchangeService.BindToItem[TItem](ItemId itemId, PropertySet propertySet)
   at Microsoft.Exchange.WebServices.Data.EmailMessage.Bind(ExchangeService service, ItemId id)
   at ExchangeAutoReplyService.Business.ExchangeAutoReply.AutoReplyToSender(ExchangeService service, String mailboxEmailId))


Jagdish


How to: get number of active Exchange streaming subscriptions?

$
0
0
Hello all! I created an EWS application (windows service) that listens user events from Office365 account. I used StreamingNotifications to subscribe and handle incoming events. So as there are different users from different organisations I used one ExchangeService object, one StreamingSubscriptionConnection object and one StreamingSubscription object per mailbox. I set connection lifetime to 30 minutes. Everything went fine until I got ErrorExceededSubscriptionCount error for one more user (testuser@somemail.se) I tried to subscribe. I guess I hit the limit of 20 simultaneous subscriptions with hanging and not properly closed subscriptions. But then I shut down my service waint several hours and tried to subscribe 10 users again. It was a success but when I tried to subscribe "testuser@somemail.se" I hit ErrorExceededSubscriptionCount again. It seems a subscription was chached somehow for this user and I can't determine a pattern. Because sometimes it's possible to subscribe him sometimes it fails. Plsease give me any advice. Is there any way to get active subscriptions from Exchange and is it possible to overcome 20 subscriptions issue for Office365?

Exchange 2010 SP3 OAB errors 0x80190193

$
0
0

Outlook 2010 unable to download OAB with error 0x80190193 - the operation failed.

I have down the following to create now OAB but still failed.

1: Create new OAB from EMC.
2: Select Web based with all CAS servers (with and without Public Folder distribution selection).
3: Restart MS Exchange System Attendant and File Distribution Service.
4: Update the OAB from EMC and Set it As Default.
5: Associate the new OAB to Mailbox Database.

Check the location for the .LZX files
 C:\Program Files\Microsoft\Exchange Server\V14\ExchangeOAB => From Generator server (Mailbox role)
 C:\program files\Microsoft\Exchange Server\V14\ClientAccess\OAB\ => From all CAS

Any advise?  Thanks.

 

Kelvin Teang

When is the ServerId for a message generated?

$
0
0

I'm working on a client that uses Exchange for emails.

Whenever we sync a message we get an associated serverId (e.g. <airsync:ServerId>3:20</airsync:ServerId>) with that message. When is this serverId generated on the server?

The reason I'm asking this is when I try to call the ItemOperations (Fetch) Command for a mail before calling the Sync Command I get error code 6 (Document library - The object was not found or access denied.).

The way I do this is by getting the ServerId for the message by finding out the ServerId of the last synced mail and adding one to it (i.e ServerId = LastServerId + 1). I then send myself an email (which I assume is going to get the ServerId that I calculated) and call the ItemOperations Command with that ServerId. This gives me error code 6.

But if I call the Sync Command first and then call the ItemOperations Command with the calculated ServerId I get a successful response.

Am I doing something wrong?

How do I get a successful response from the ItemOperations Command without having to call the Sync Command first?

Thanks,

Vivek



Unable to fetch all properties of EmailMessage, getting "You must load or assign this property before you can read its value."

$
0
0

I had this code:

 EmailMessage msg = EmailMessage.Bind(service, itemId);
            Console.WriteLine("From: " + msg.From + "\n" +"To: " + msg.ToRecipients + "\n" +"CC: " + msg.CcRecipients + "\n" +"Bcc: " + msg.BccRecipients + "\n" +"DisplayCC: " + msg.DisplayCc + "\n" +"Subject: " + msg.Subject + "\n" +"Size: " + msg.Size + "\n" +"DateTimeReceived: " + msg.DateTimeReceived + "\n" +"DateTimeSent: " + msg.DateTimeSent + "\n" +"Importance: " + msg.Importance + "\n" +"Sensitivity: " + msg.Sensitivity + "\n" +"Attachment Count: " + msg.Attachments.Count + "\n" +"Message Class: " + msg.ItemClass + "\n" );

And it worked.

Then I tried to access MimeContent as :

msg.MimeContent.Content 

It gave me error as "You must load or assign this property before you can read its value.".

Thus I added MimeContent to load in Bind() through PropertySet as follows:

 EmailMessage msg = EmailMessage.Bind(service, itemId, new PropertySet(ItemSchema.MimeContent));                                                                                                                                 

But it gave same error. During debug session I realize that it is now not loading other properties while MimeContent is getting populated. So added them back too:

   EmailMessage msg = EmailMessage.Bind(service, itemId, new PropertySet(ItemSchema.Attachments,
                                                                                  ItemSchema.DateTimeReceived,
                                                                                  ItemSchema.DateTimeSent,
                                                                                  ItemSchema.ItemClass,
                                                                                  ItemSchema.Sensitivity,
                                                                                  ItemSchema.Size,
                                                                                  ItemSchema.Subject,                                                                                  
                                                                                  ItemSchema.MimeContent)); 
But it seems that this is not working and those other properties are not getting populated. How can I load  all these properties along with MimeContent together in single EmailMessage instance?



To get Replied Text from an Email Reply using Exchange Transport SDK?

$
0
0

Hi,

Is there a way to get just the replied text from an Email Reply using Exchange Transport Agent SDK?

We are building a Transport agent, where we just need the text of replied email, not the text of email replied to, which is normally attached with reply, below the replied email text.

Thanks in anticipation.


Regards, David Johnson

Import Certificate to Exchange 2010 and come up with red X

$
0
0
I backup certificate from exchange 2003 and import it to exchange 2010 from MMC. first day is fine, after that the Red X show on the certificate under "Server Configuration". please anyone can advice. thanks so much,

Java EWS - Connect to Hotmail

$
0
0

Hello,

I'm trying to connect an Hotmail mailbox with EWS.

The problem is that I can't connect to Hotmail....

I have try that :

ExchangeService service = new ExchangeService();
ExchangeCredentials credentials = new WebCredentials( username + "@" + domain + ".fr", password, "hotmail.com");
service.setCredentials(credentials);
try
{
	service.setTraceListener(new TraceListener());
//			 service.autodiscoverUrl(username + "@" + domain + ".fr", new ValidateRedirectionUrlCallback());
//			 service.setUrl(new URI("https://outlook.com/EWS/Exchange.asmx"));
			 service.setUrl(new URI("https://autodiscover.hotmail.com/autodiscover/autodiscover.xml"));
//			service.autodiscoverUrl(/*"https://autodiscover.hotmail.com/autodiscover/autodiscover.xml"*/username + "@" + domain + ".fr", new ValidateRedirectionUrlCallback());
			service.setUseDefaultCredentials(false);
			service.setPreAuthenticate(true);
}
catch (Exception e)
{
	initMDC("", new Long(-1), new Long(-1), "ExchangeWSEngine/start");

	m_stringBuffer = new StringBuffer("Exception 0 : ").append(LogFormatter.stack2string(e));
			LOGGER.info(m_stringBuffer.toString());
}

I have try to make "static" URl, autodiscover URL, with domain or not (in WebCredentials).

Did you see the problem ?

Thank's.

Meetings accepted by delegate not showing up until hours later

$
0
0
I have a client who has  a delegate accepting meetings for her and they are not showing up as accepted until hours later.  Sometimes more than 24 hours latter.  Outlooks is creating two files in C:\Users\UserName\AppData\Local\Microsoft\Outlook, outlook.hld and extend.hld.  Does anyone what could be causing these files to be created?  We are using Outlook 2007 and Exchange 2007

Can't open message url while using the SSO Toolkit in browsers other than IE

$
0
0

Greetings,

I'm using the EWS Managed API 2.0 along side Live@edu SSO Toolkit 4.5 for Office 365.

The problem I'm encountering in Chrome/Firefox is after I open the message url in a popup

I get the following error message:

X-OWA-Error: ClientError;exMsg=Blocked a frame with origin

"https//pod51036.outlook.com" from accessing a cross-origin frame.

;file=Error: Blocked a frame with origin "https//pod51036.outlook.com"

from accessing a cross-origin frame. at new _a.$SB

(https//r4.res.outlook.com/owa/prem/15.0.837.10/scripts/boot.microsoft.0.mouse.js:91:296638) at Function._z.$GA.$50K (https//r4.res.outlook.com/owa/prem/15.0.837.10/scripts/boot.microsoft.0.mouse.js:91:647409)

at Function.Program.main (https//r4.res.outlook.com/owa/prem/15.0.837.10/scripts/boot.microsoft.0.mouse.js:91:648811) at invokeMain (https//pod51036.outlook.com/owa/?ItemID=AAMkAGYxOGYyYzYwLWQzOTMtNDg4NC1iZWNiLWNkZWVmZTVlZThmNgBGAAAAAACI5fyM8fycQ6dSItdaeckjBwD/Uh/X7yZqQJx+kWlY8KqaAAAAAA41AADWIw4bPT3EQaZo/9BbytVBAAAOZnfyAAA=&exvsurl=1

I have a redirect page that encodes the url with the SLT for automated login via SSO Toolkit.

In internet explorer it works fine.

Any directions will be appreciated

What is reason for Exception: value cannot be null. Parameter name: serverSettingsValue for exchange 2010 powershell command

$
0
0

I am trying to execute powershell command

 Get-Mailbox

from C# code.

 When my C# project is complied in .NET 3.5 then no exceptions are thrown

But when same project is compiled in .NET 4.0 this error message getting thrown.

       System.Management.Automation.CmdletInvocationException:
 Value cannot be null.
Parameter name: serverSettings ---> System.ArgumentNullException: Value cannot b
e null.
Parameter name: serverSettings
   at Microsoft.Exchange.Configuration.Tasks.TaskVerboseStringHelper.GetADServer
Settings(String cmdletName, ADServerSettings serverSettings)
   at Microsoft.Exchange.Configuration.Tasks.Task.LogCmdletIterationEvent()
   at Microsoft.Exchange.Configuration.Tasks.Task.BeginProcessing()
   at System.Management.Automation.Cmdlet.DoBeginProcessing()
   at System.Management.Automation.CommandProcessorBase.DoBegin()
   --- End of inner exception stack trace ---
   at System.Management.Automation.Runspaces.PipelineBase.Invoke(IEnumerable inp
ut)
   at System.Management.Automation.Runspaces.Pipeline.Invoke()
   at Exchange2010.Program.Main(String[] args)



 This C# application  is executed on exchange server itself not from remote machine. Exchange server has all .NET version installed from 1.1 to 4.0.
I thought i have to add app.config file so i have updated project config file with these 2 lines 

<startup useLegacyV2RuntimeActivationPolicy="true"><supportedRuntime version="v4.0"/></startup>


But no luck. 
Any one know why .NET 4.0 is causing problem  for Exchange 2010 cmdlets ?
.Net 4.0 is installed after installing Exchange.

From Exchange Management shell I am able to execute this command but not from C# app.
Exchange 2010 has SP3 installed.

Windows 8.1 Mail - Exchange 2003 - ActiveSync issue

$
0
0

Masters,

 I try to connect windows mail to our exchange server. Everything works well, but unfortunatelly, if i start the windows mail i get event id 529 (logon type 8) continously in the windows server 2003 security log. After i close mail flooding stop.

After i set the e-mail box, i got a warning message in windows mail:

There is a problem with server security certificate. The address in the certificate does not mach the server address. (i just translated the message because its not english by default.)

About our system:

- Windows SBS2003
- Exchage 2003, active sync
- Dyndns and NAT firewall rule from mycompany.dyndns.org (443) to local server ip (443)

Any idea how to fix this "event flooding" issue?

Using smartphones with activesync we have no problem. We have not use any truested exernal cert provider. In the mailbox settings i checked the ignore certificate problems.

Thank you

EWS API 2.0 - Issues with impersonation on Exchange 2007SP1 servers

$
0
0

I am working with the EWSAPI 2.0 on a VB.NET application which essentially collects stats on mailboxes on Exchange servers.  My code seems to work fine with Exchange 2010 and 2013 servers, but I cannot seem to get it to work with Exchange 2007SP1 servers.  On Exchange 2007SP1, it seems that the API is not passing on the impersonation account credentials. 

Here are IIS logs from the Exchange 2007SP1 server (running on Windows 2003 SP2):
2013-12-05 19:38:54 W3SVC1 169.254.64.50 POST /ews/exchange.asmx - 443 - 169.254.64.50 ExchangeServicesClient/15.00.0516.014 401 2 2148074254
2013-12-05 19:38:54 W3SVC1 169.254.64.50 POST /ews/exchange.asmx - 443 - 169.254.64.50 ExchangeServicesClient/15.00.0516.014 401 1 0
2013-12-05 19:38:54 W3SVC1 169.254.64.50 POST /ews/exchange.asmx - 443 - 169.254.64.50 ExchangeServicesClient/15.00.0516.014 401 1 0
2013-12-05 19:38:55 W3SVC1 169.254.64.50 POST /ews/exchange.asmx - 443 - 169.254.64.50 ExchangeServicesClient/15.00.0516.014 401 2 2148074254

Logs from Exchange 2010 on Windows 2008 R2:
2013-12-05 19:25:05 192.168.200.30 POST /ews/exchange.asmx - 443 EVEXAMPLE\emaproxy 192.168.200.31 ExchangeServicesClient/15.00.0516.014 200 0 0 13
2013-12-05 19:25:05 192.168.200.30 POST /ews/exchange.asmx - 443 - 192.168.200.31 ExchangeServicesClient/15.00.0516.014 401 0 0 1
2013-12-05 19:25:05 192.168.200.30 POST /ews/exchange.asmx - 443 EVEXAMPLE\emaproxy 192.168.200.31 ExchangeServicesClient/15.00.0516.014 200 0 0 15
2013-12-05 19:25:06 192.168.200.30 POST /ews/exchange.asmx - 443 - 192.168.200.31 ExchangeServicesClient/15.00.0516.014 401 0 0 0
2013-12-05 19:25:06 192.168.200.30 POST /ews/exchange.asmx - 443 EVEXAMPLE\emaproxy 192.168.200.31 ExchangeServicesClient/15.00.0516.014 200 0 0 13
2013-12-05 19:25:06 192.168.200.30 POST /ews/exchange.asmx - 443 - 192.168.200.31 ExchangeServicesClient/15.00.0516.014 401 0 0 1

Exchange 2013:
2013-12-05 18:25:44 198.178.166.60 POST /ews/exchange.asmx - 443 VISTA\ewsproxy198.178.166.150 ExchangeServicesClient/15.00.0516.014 - 200 0 0 62
2013-12-05 18:25:44 198.178.166.60 POST /ews/exchange.asmx - 443 - 198.178.166.150 ExchangeServicesClient/15.00.0516.014 - 401 0 0 15
2013-12-05 18:25:44 198.178.166.60 POST /ews/exchange.asmx - 443 VISTA\ewsproxy 198.178.166.150 ExchangeServicesClient/15.00.0516.014 - 200 0 0 218
2013-12-05 18:25:44 198.178.166.60 POST /ews/exchange.asmx - 443 - 198.178.166.150 ExchangeServicesClient/15.00.0516.014 - 401 0 0 31
2013-12-05 18:25:44 198.178.166.60 POST /ews/exchange.asmx - 443 VISTA\ewsproxy 198.178.166.150 ExchangeServicesClient/15.00.0516.014 - 200 0 0 15
2013-12-05 18:25:44 198.178.166.60 POST /ews/exchange.asmx - 443 - 198.178.166.150 ExchangeServicesClient/15.00.0516.014 - 401 0 0 0

Note how the Exchange 2010 and 2013 IIS logs show the impersonation account while Exchange 2007 does not.  Here is a snippet of the code that I am using:
 Dim oService As ExchangeService
        If shortVersion = 11 Then ' 2007 sp1
            oService = New ExchangeService(ExchangeVersion.Exchange2007_SP1)
        ElseIf shortVersion = 20 Then ' 2010
            oService = New ExchangeService(ExchangeVersion.Exchange2010)
        ElseIf shortVersion = 21 Then ' 2010 sp1
            oService = New ExchangeService(ExchangeVersion.Exchange2010_SP1)
        ElseIf shortVersion = 22 Then ' 2010 sp2
            oService = New ExchangeService(ExchangeVersion.Exchange2010_SP2)
        ElseIf shortVersion = 30 Then ' 2013
            oService = New ExchangeService(ExchangeVersion.Exchange2013)
        Else
            sCError = "Exchange version not set!"
            Return False
        End If

        'URI
        Dim sServerURI As String = ""
        If bUseSSL = False Then
            sServerURI = "http://" & msCASServer & "/ews/exchange.asmx"
        ElseIf bUseSSL = True Then
            sServerURI = "https://" & msCASServer & "/ews/exchange.asmx"
        End If
        Dim oURL As New Uri(sServerURI)
        oService.Url = oURL

        oService.Credentials = New NetworkCredential(sUserName, sUserPassword, sDomain)
        TrustAllCertificatePolicy.OverrideCertificateValidation()
        oService.ImpersonatedUserId = New ImpersonatedUserId(ConnectingIdType.SmtpAddress, sEmail)

        'connect to root folder
        Dim oRoot As Folder

        Try
            oRoot = Folder.Bind(oService, WellKnownFolderName.MsgFolderRoot)
        Catch ex As Exception
            sCError = ex.Message
            MsgBox("Error while accessing CAS for " & msExchServer & ":  " & ex.Message & " - Check to make sure that the CAS URL is correct and that the user specified has impersonation rights on the Exchange server.  URL: " & oService.Url.ToString)
            Return False
        End Try

The 401 error occurs when trying to bind to the root folder of the mailbox.  I have following the directions on setting up impersonation for Exchange 2007SP1 here:

http://msdn.microsoft.com/en-us/library/bb204095%28EXCHG.80%29.aspx

http://calendarservermigration.blogspot.in/2007/08/exchange-2007-impersonation-debugging.html

Any suggestions on what to check would be greatly appreciated.

Exchange 2010 Wildcard Certificate

$
0
0

Hello

I ran into an issue with our new wildcard certificate. I would need to have it installed on our Exchange 2010 server, but somehow cannot make it. I have found some instructions about installing wildcard certificate regarding the fact that I have to make changes to the Set-OutlookProvider -Indentity EXPR to *.company.com, so that the error notice in Outlook, telling me that the name on the certificate is different from the address of the proxy mail.company.com is different, would dissapear. Unfortunatelly, this does not help and the error notice is not letting me through even after this. Do I have to make some other changes too ? How can I please fix this ?

thanks

J.


Cannot create a mail-enabled public folder with the EWS Managed API

$
0
0
I need to be able to create a new public folder that is mail enabled using the EWS Managed API.  I have tried it two ways and neither seems to work.

Here is the code for the first:

Folder rootFolder = Folder.Bind(exchangeService, new FolderId(WellKnownFolderName.PublicFoldersRoot), PropertySet.FirstClassProperties);
Folder newFolder = new Folder(exchangeService);
newFolder.DisplayName = "Folder XX";
newFolder.SetExtendedProperty(new ExtendedPropertyDefinition(PR_PF_PROXY_REQUIRED, MapiPropertyType.Boolean), true);
newFolder.Save(rootFolder.Id);

When I execute this code, the folder is created and shows up in the EAC with the mail enabled value of 'Yes', but when I go to edit the entry I get the error message "the  items you're trying to open couldn't be found." with a help link that doesn't help.  I cannot disable the mail enabled state and I cannot delete the folder either.

For my second attempt, I tried to add the PR_PF_PROXY_REQUIRED flag on an update instead of during creation .. so similar code to above, but after the original creation this is the code:

FindFoldersResults results = this.client.ExchangeService.FindFolders(new FolderId(WellKnownFolderName.PublicFoldersRoot), new FolderView(100) { PropertySet = new PropertySet(FolderSchema.Id, FolderSchema.ParentFolderId, FolderSchema.DisplayName), Traversal = FolderTraversal.Shallow });
folder = results.FirstOrDefault(f => Utils.EqualsNeutral(f.DisplayName, "Folder XX"));
folder.SetExtendedProperty(new ExtendedPropertyDefinition(PR_PF_PROXY_REQUIRED, MapiPropertyType.Boolean), true); 
folder.Update();



But when I execute this code, the Update() call throws an error saying that the properties are invalid.  What are valid values?  Is it necessary to set more than one property to properly mail enable a public folder?

Note: When I try to access and delete the newly created folders through PowerShell and I get this error response:

PS C:\WINDOWS\system32> Disable-MailPublicFolder -Identity "\Folder XX"
The Active Directory proxy object for the public folder '\Folder XX' is being generated. Please try again later.   + CategoryInfo          : NotSpecified: (:) [Disable-MailPublicFolder], ManagementObjectNotFoundException   + FullyQualifiedErrorId : [Server=BY2PR05MB029,RequestId=d5d1e4c1-64e0-4b26-8e9a-159b4380ffff,TimeStamp=12/4/2013 3:49:47 PM] [FailureCategory=Cmdlet-ManagementObjectNotFoundException] 331C2FC9,Microsoft.Exchange.Management.MapiTasks.DisableMailPublicFolder




JSH

Contecting to exchange with php - 403

$
0
0
I am trying to get calendars from exchange. But exchange return 403 http code

$action='http://schemas.microsoft.com/exchange/services/2006/messages/FindItem';
$headers = array(
'Method: POST',
'Connection: Keep-Alive',
'User-Agent: PHP-SOAP-CURL',
'Content-Type: text/xml; charset=utf-8',
'SOAPAction: "'.$action.'"',
);
$ch = curl_init('https://www.outlook.com/EWS/Exchange.asmx');
$request = '<?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://schemas.microsoft.com/exchange/services/2006/types" xmlns:ns2="http://schemas.microsoft.com/exchange/services/2006/messages"><SOAP-ENV:Header><ns1:RequestServerVersion Version="Exchange2007"/></SOAP-ENV:Header><SOAP-ENV:Body><ns2:FindItem Traversal="Shallow"><ns2:ItemShape><ns1:BaseShape>Default</ns1:BaseShape></ns2:ItemShape><ns2:CalendarView StartDate="2012-06-12T15:18:34+03:00" EndDate="2014-06-12T15:18:34+03:00"/><ns2:ParentFolderIds><ns1:DistinguishedFolderId Id="calendar"/></ns2:ParentFolderIds></ns2:FindItem></SOAP-ENV:Body></SOAP-ENV:Envelope>';
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_POST, true );
curl_setopt($ch, CURLOPT_POSTFIELDS, $request);
curl_setopt($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1);
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC | CURLAUTH_NTLM);
curl_setopt($ch, CURLOPT_USERPWD, $user.':'.$password); //$user and $password are ok
$response = curl_exec($ch);
var_dump($response);
$i = curl_getinfo($ch);
print_r($i);

This code gives me:

string(0) ""
Array
(
[url] => https://www.outlook.com/EWS/Exchange.asmx
[content_type] =>
[http_code] => 403
[header_size] => 746
[request_size] => 2021
[filetime] => -1
[ssl_verify_result] => 0
[redirect_count] => 1
[total_time] => 2.849341
[namelookup_time] => 3.8E-5
[connect_time] => 4.1E-5
[pretransfer_time] => 0.000162
[size_upload] => 693
[size_download] => 0
[speed_download] => 0
[speed_upload] => 243
[download_content_length] => 0
[upload_content_length] => 693
[starttransfer_time] => 2.663647
[redirect_time] => 0.18565
[redirect_url] =>
[primary_ip] => ......
[certinfo] => Array
(
)

[primary_port] => 443
[local_ip] => .....
[local_port] => 42052
)

When i set bad user or password, then exchange gives me 401. When user and password are ok, exchange gives me 403. Where is problem?
Viewing all 7132 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>