Cloud stories: Groupwise to Office 365 (part 2)

office 365 cloudHaving sorted out the initial connectivity issues the next stage of the process was to make a decision on what version of the Outlook client (and therefore Office) to deploy to users’ machines. Until now the college had been running Office 2007 and there would need to be a strong reason to change staff machines midway through the academic year.

Outlook, Office 365 and cached profiles

In my previous experiences with Exchange I’d always disabled Cached Exchange Mode as it always seemed to cause more trouble than it was worth, especially with users that frequently moved between PCs. However due to the fact the Exchange server is now on a shared platform and more “distant” from the local network it becomes necessary to look at it again. Initially we tried running with Cached Mode disabled but performance wasn’t at an acceptable level; moving between folders caused a noticeable delay, as did searches and listing the contents of a large inbox.

With that in mind we knew Cached Mode was going to be mandatory, this is where things get interesting. In previous on-premise scenarios it mailbox limits are generally an order of magnitude smaller than the standard offering on Office 365, however with the standard offering now 50GB per user the effects on OST files could potentially be rather problematic. If a user moves machine the time taken to build the cache again could lead to a pretty painful user experience too!

All Outlook versions prior to 2013 are pretty much a blunt instrument in terms of how they deal with the cache. Fortunately Office 2013 comes to the rescue with its new Hybrid Cache feature. More information can be found at

cached mode
configure this either manually in the Outlook profile or via GPO \ OCT

What it basically does is to cache a smaller amount of email (from 3 months upwards) then offers the user a small “There are more items in this folder on the server” link for anything older, at which point Outlook grabs the required mail seamlessly from the Office 365 servers. It’s a best-of-both-worlds scenario and, in my opinion is a key reason to upgrade if using Office 365 with the desktop Outlook client.

That said even at the 3 months setting a reasonably sized mailbox can still need 1GB+ of data to be downloaded before Outlook is ready to use. As a result we’ve recommended our users to access email via OWA if they’re on a machine they’re not likely to use again any time soon.

Self-service Office upgrade

The cache alone pretty much made up our minds to go with Office 2013, the additional integration with OneDrive for Business \ SharePoint was also another factor that will become more apparent in the coming months once our SharePoint Intranet goes online too.

With the decision made we needed to find the simplest method to deploy the new version of Office to staff. With nearly 1000 staff machines all in use at different times it wasn’t something we could push out overnight. The team-by-team migration plan also meant that we couldn’t switch in a “big bang” method as Outlook and GroupWise don’t play nicely if both are active and fighting for control of MAPI profiles.

nalwin office upgradeThe solution was to make a self-service process that users could initiate at a time convenient to them. Generally it tended to be a lunch break on the day of their migration but equally it could be done at the end of the day etc. We used ZENWorks to push out a Bundle named Office 2013 upgrade which contained a customised MSP created with the Office Customisation Tool (OCT).

If you’ve not used it before basically you run setup.exe /admin then generate an MSP file which you place in the Updates folder within the Office 2013 installation media folder structure.

More info available at

Tip: remember to include the AUTO_ACTIVATE property while configuring your OCT deployment file as avoids users seeing any pesky pop-ups asking them to activate Office when they run it for the first time

Progress indicator

We also hit a bit of a problem of our own making due to the effects our Novell environment has on Folder Redirection. Our (until now) lack of Active Directory meant we had to use some unofficial local policy ADM templates to achieve a similar effect to the native Windows GPOs. The downside of this was that we had to map to a drive letter rather than the supported method of using UNC path. As a result Office setup bombed out when run as the logged-on user, even if using the Dynamic Local Admin option in ZENWorks.

the HTA loads full-screen and disables CTRL+ALT+DEL so setup doesn’t get interrupted

The workaround was to use the SYSTEM account to run the setup executable, however it meant that we lost any form of progress indicator to let the user know something was actually happening. I knocked up a quick HTA that effectively locks the workstation with a full-screen splash page informing the user to wait for the automatic reboot, along with some quick tips on how to set up Outlook on next logon.

Fixing setup errors

In testing I found that the upgrade would sometimes fail for no apparent reason. In line with some of the gems I’ve had from Windows 8 the error messages were about as much use as a chocolate teapot… “Microsoft Office Professional Plus 2013 encountered an error during setup” doesn’t really help much.

chcoloate teapot office error
unhelpful error message mandatory, teapot optional…

Digging through temporary files yields a setup log file that gives a more detailed insight into what went wrong, although in this case the failure was listed as a fairly non-specific “1603” error. The workaround listed on the Microsoft forums that recommends deleting a couple of folders from ProgramData seemed to work so I’ve included the folder delete \ rename actions as the first steps in the Bundle to be sure.

delete directory

Bundle requirements

Recently we noticed a few machines were failing the upgrade but initially couldn’t think why as they were all built from the same base Windows 7 image and Office 2007 installation. The error we kept getting was a 1605 which means “out of disk space”… oops! Turns out the affected machines were our 1st-gen SSD PCs that only had 60GB drives. Between the ZCM cache, Office install directory and other detritus on the local drive there wasn’t enough room to install Office.

Disk cleanup was the easy fix, along with a couple of requirements on the Bundle to check for disk space, as well as to only run the installer if Office 2013 wasn’t already installed

Tip: use HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\15.0 to check this


Outlook profile \ Launch actions

We experienced some issues when GroupWise and newer versions of Outlook were installed on the same machine, basically both programs were fighting for control of the default MAPI profile which made Outlook rather upset.

To get around this I added some additional Launch actions to our Outlook desktop shortcut to check for (and remove) any GroupWise MAPI profiles first. In older versions of Office profile information was stored in a hard-to-find location in the registry, fortunately in 2013 that’s changed for the better and you just need to look in:

HKEY_CURRENT_USER\Software\Microsoft\Office\15.0\Outlook\Profiles\[profile name]

We used OCT to define that all new Outlook profiles are called Office365 by default, with that in mind I use the registry location above to check if a legitimate profile exists. If not we import a PRF file with the accounts section removed to ensure the first-run wizard appears as expected, the command to do this looks like

Command: ${ProgramFiles32}\Microsoft Office\Office15\OUTLOOK.EXE
Command Line Parameters: /importprf Z:\Office365.prf

Next time

Next post in this mini-series will cover how we migrated 400GB+ of mail data from GroupWise to Office 365 with the help of some rather nifty scripting 🙂


One Response to Cloud stories: Groupwise to Office 365 (part 2)

  1. Pingback: Field notes: OST cache, shared mailboxes and SSD drives | gshaw0

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: