Windows Server 2012 Essentials/R2 Essentials may fail to integrate with Microsoft Office 365

[This post comes to us courtesy of Sabir Chandwale and Sandeep Biswas from Global Business Support]

We have discovered a new issue with Microsoft Office 365 Dashboard integration on Windows Server Essentials (2012 and 2012 R2 both). The Integrate with Microsoft Office 365 wizard fails with the following error:

image

The Application event log shows the following error messages:

Log Name:      Application
Source:        Application Error
Date:          5/29/2015 5:33:33 AM
Event ID:      1000
Task Category: (100)
Level:         Error
Keywords:      Classic
User:          N/A
Computer:      WS2012R2ESS.CONTOSOIN.local
Description:
Faulting application name: SharedServiceHost.exe, version: 6.3.9600.16384, time stamp: 0x5215ca62
Faulting module name: unknown, version: 0.0.0.0, time stamp: 0x00000000
Exception code: 0x80131623
Fault offset: 0x00007ff86584247e
Faulting process id: 0x10c0
Faulting application start time: 0x01d099d0f88b7026
Faulting application path: C:\Windows\System32\Essentials\SharedServiceHost.exe
Faulting module path: unknown
Report Id: 3e66f1d2-05c4-11e5-80d0-000d3a20bee4
Faulting package full name:
Faulting package-relative application ID:

Log Name:      Application
Source:        .NET Runtime
Date:          5/29/2015 5:33:32 AM
Event ID:      1025
Task Category: None
Level:         Error
Keywords:      Classic
User:          N/A
Computer:      WS2012R2ESS.CONTOSOIN.local
Description:
Application: SharedServiceHost.exe
Framework Version: v4.0.30319
Description: The application requested process termination through System.Environment.FailFast(string message).
Message: Unhandled exception from operation:

Service type: Microsoft.WindowsServerSolutions.PasswordSync.PasswordSyncManagementProvider
Operation: [https://tempuri.org/] IPasswordSyncProvider.BeginActivate
Async: False
Parameters:
   PasswordSyncType type
   String id

Microsoft.WindowsServerSolutions.MailService.MailServiceException: Unable to create process as user. ---> System.ComponentModel.Win32Exception: The system cannot find the file specified

The Windows Server Essentials Email Service may stop on its own and generate the following error in the System event log:

Log Name:      System
Source:        Service Control Manager
Date:          5/29/2015 5:34:21 AM
Event ID:      7031
Task Category: None
Level:         Error
Keywords:      Classic
User:          N/A
Computer:      WS2012R2ESS.CONTOSOIN.local
Description:
The Windows Server Essentials Email Service service terminated unexpectedly.  It has done this 1 time(s).  The following corrective action will be taken in 60000 milliseconds: Restart the service.

The file SharedServiceHost-EmailProviderServiceConfig.log located at C:\ProgramData\Microsoft\Windows Server\Logs folder may show the following exception:

[9692] 150514.140603.4973: ProviderFramework: Error: [0] : Unhandled Exception details: Microsoft.WindowsServerSolutions.MailService.MailServiceException: Unable to create process as user. ---> System.ComponentModel.Win32Exception: The system cannot find the file specified
   --- End of inner exception stack trace ---
at Microsoft.WindowsServerSolutions.MailService.MailServiceUtils.ExecuteCommandWithThreadImpersonationToken(String fileName, String args)
at Microsoft.WindowsServerSolutions.PasswordSync.PasswordSyncManagementCore.ConfigurePcnsTarget()
at Microsoft.WindowsServerSolutions.PasswordSync.PasswordSyncManagementCore.<Activate>b__5()
at Microsoft.WindowsServerSolutions.MailService.ActiveDirectoryHelper.InvokeOperationImpersonateWrapper(Action action)
at Microsoft.WindowsServerSolutions.PasswordSync.PasswordSyncManagementCore.Activate()
at Microsoft.WindowsServerSolutions.Common.ProviderFramework.ProviderBase`1.<>c__DisplayClass4.<InvokeOperation>b__3()
at Microsoft.WindowsServerSolutions.Common.ProviderFramework.ProviderBase`1.InvokeOperation[TResult](String operationName, Func`1 func)
at Microsoft.WindowsServerSolutions.PasswordSync.PasswordSyncManagementProvider.InvokeOperationWrapperAsync(String operationName, Action action)
at SyncInvokeBeginActivate(Object , Object[] , Object[] )
at System.ServiceModel.Dispatcher.SyncMethodInvoker.Invoke(Object instance, Object[] inputs, Object[]& outputs)
at Microsoft.WindowsServerSolutions.Common.ProviderFramework.Internal.ExceptionScreener._ScreenForExceptions(GeneralInvoker invokeMe, Object instance, Object[] inputs, Object[]& outputs)
[9692] 150514.140603.4973: SharedServiceHost: Critical: [0] : _UnhandledExceptionHappened: SharedServiceHost.exe encountered an error (0x80131500): Microsoft.WindowsServerSolutions.MailService.MailServiceException: Unable to create process as user. ---> System.ComponentModel.Win32Exception: The system cannot find the file specified

This behavior has been observed because of the way the Microsoft Password Change Notification Service package has been compressed. In order to fix the issue, follow the workaround mentioned below.

1. On the server, rename the following folders present at the C:\Program Files\Windows Server\Bin folder:

    PCNS

    PCNS.zip

2. Download Password Change Notification Service (x64 package)

3. Extract the zipped folder and navigate to “..\Password Change Notification Service\x64\” folder

4. Copy the folders Program Files, Windows and the file Password Change Notification Service.msi to the Desktop

5. Right-click all the three items, create a Compressed (zipped) folder and name it PCNS.zip

6. Copy this newly created zipped folder PCNS.zip to the C:\Program Files\Windows Server\Bin folder

7. Run the Integrate with Microsoft Office 365 wizard from Windows Server Essentials Dashboard

Alternatively, you can rename the existing PCNS and PCNS.zip folders. Download PCNS.ZIP from here and copy it to the C:\Program Files\Windows Server\Bin folder.

Resolution (Updated on 06/30/2015): The folder structure for PCNS.zip has been reverted and no manual steps before integration are required any more.