Sunday, August 3, 2008

Exchange OWA premium on a Mac

Since we're implementing Exchange at work, I've been trying to figure out a way to get Outlook Web Access (OWA) to function in full mode on a Mac. Unfortunately, if you are using anything but IE 6 or higher on Windows 2000 or higher, you're only given the option to run OWA in "light" mode, which has several limitations. I won't go into to much detail on that here, but this page has all the info you could ever want: http://msexchangeteam.com/archive/2006/09/13/428901.aspx.

The big ones (for me anyway) are day only view in the calendar, and no access to message rules. Obviously, I could run IE in VMware Fusion, but firing up an entire virtual machine just to get OWA premium doesn't make much sense to me, so I started by seeing if I could trick OWA into thinking I was on IE. My first idea was simply to switch the user agent for Firefox or Safari. Setting the user agent to IE6 or IE7 in Safari wouldn't trick OWA, but on Firefox I was given the option to log in to OWA premium. Unfortunately, what I got was a jumbled mess.

Firefox - IE 7 User Agent

So that's no good. Next up was a project I had heard about a while ago called ies4osx, which uses Darwine to run the Windows native version of IE. A couple quick downloads later, I ran the ies4osx installer, and had a working copy of IE6 fired up. Unfortunately, since Darwine emulates Windows 98 -- OK, not emulates, since everyone knows that WINE stands for WINE Is Not an Emulator -- OWA still only gave me the light option. So I did some quick Google searches for changing IE's user agent and found this page. Where that guy girl is using Linux, I had to modify her instructions somewhat. While I had IE fired up, I used it to navigate to C:\Windows\ and opened up regedit.exe. Once the Registry Editor launched, I closed out of IE and followed her instructions.
  • In the registry editor window navigate to:HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Internet Settings\User Agent\
  • Select the "Edit" menu -> New -> Key. For the key name enter: Post Platform
  • With "Post Platform" selected: Edit menu -> New -> String Value. For the name enter: Windows NT 5.1
  • Click "OK", then double-click the new item named "Windows NT 5.1" and set the value: This String Doesn’t Matter I think
  • Select "User Agent" key again
  • Select the "Edit" menu -> New -> Key. For the key name enter: Pre Platform
  • With "Pre Platform" selected: Edit menu -> New -> String Value. For the name enter: Windows NT 5.1
  • Click "OK", then double-click the new item named "Windows NT 5.1" and set the value: This String Doesn’t Matter I think
  • Close regedit
  • Run IE and test logging into OWA. On the login page it should now allow you to select either premium mode or lite mode.
Bam! It worked. As you can see below, OWA gave me the option to log in to Premium mode.

Microsoft Exchange - Outlook Web Access - Microsoft Internet Explorer 6.0

Once in I had full access to OWA premium as if I was a windows user.

IE6 through Darwine

However, if you look at Activity Monitor in that screenshot, you'll see that wineserver and mwine are going completely out of control, together taking up 100% of both CPUs. Not really acceptable performance. So on to something else.

The next idea was to do the same thing in Crossover, another implementation of Wine for OS X. Crossover is a bit more polished/tweaked than Darwine, and can actually run Office 2007 very well. I'm still debating if it was worth the purchase, but since I own it, might as well try. Crossover has IE6 listed as an installable program; you pretty much select that you want to install Internet Explorer and let it do the rest of the work. A few minutes later, I had an IE6 install ready to go. Unfortunately, it had the same problem as Darwine -- reporting that it was running on Windows 98, so I followed the same procedure to edit the registry to change the user agent. Again, I was able to log in to OWA Premium.

OWA through Crossover

So you can see the performance is much, much better, but there are some strange rendering issues. Calendar items are blacked out - that was how it showed up, wasn't done by me. Also new mail counts render weird, and the quicklinks on the bottom left don't show. The calendar rendering is the big killer on this one, and really, it's too bad since otherwise, it performs really well. I'll probably do a little more work on troubleshooting this at some point.

So there you have it. ies4osx/Darwine and Crossover both will let you get in to OWA premium with a bit of tweaking. ies4osx has huge performance issues, but other than that renders everything well. Crossover renders some things poorly, but has excellent performance. Neither seem like a particularly great option, but if you don't care too much about calendar but do want OWA Premium (and have the $40 to spend), Crossover is probably your best option.

14 comments:

Margret Li said...

Nice post. The organization I work for is having a similar issue with OWA and Mac users.

We're trying to find a server side solution that do not require users to mess around in registries. It's an on-going saga that's for sure.

Thanks for the post.

Adam said...

The idea of maybe using Citrix as a solution was tossed around at my work.

S. Yoder said...

Glad my post on my site, FlatMtn, helped. However, "that guy" is actually "that girl". [grin]

Adam said...

Noted!

Paul said...

grrr, can't get this to work. Is there a preconfigured one working somewhere I can download?

Marco said...

Worked exactly as described for me.Thanks. Found some of the other ui bugs, like the invisible "Save" button when creating tasks - but it works.

Jonathan said...

I can't quite get this to work. When I try to launch OWA, a blank window pops up in front the browser. Closing the pop-up immediately creates a new one and keeps the main page from fully loading. It does load enough to show the option for both premium and basic logins, however...

marbiol said...

I've been having the same issue. Installing into an XP bottle using crossover works but is slow and OWA keeps reporting browsing errors so I can't type into a mail field.

IE 7 using the crossover 8 beta works much quicker but if I click new or reply it won't pop up a message window... If anyone has found a better solution yet please post...

maltschul said...

Awesome analysis and reg hack! And @marbiol, thanks for pointing out the availability of CrossOver 8 Beta!

** CrossOver 8 Beta 4 fixed the rendering issues on IE6 for me. ** This gives a legit emulator solution to accessing OWA Full: performance and rendering.

A couple notes:
1. To get CrossOver 8 Beta 4, create an account and download here.
2. I tried but couldn't get IE7 working with OWA (something related to security and cookies I think), so I couldn't test/compare.
3. You can copy and paste this reg hack into a plain text file, then save it with .reg extension and import it directly into RegEdit without the steps above:
==============================
REGEDIT4
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Internet Settings\User Agent\Post Platform]
"Windows NT 5.1"=""
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Internet Settings\User Agent\Pre Platform]
"Windows NT 5.1"=""
==============================

Adam said...

Awesome @maltschul... trying now, probably will post an update this weekend with props to you.

Oh and it's not an emulator since Wine Is Not an Emulator :)

Zach said...

Good ideas... I went for the CrossOver solution.

unfrostedpoptart said...

Wow - thanks so much! I just switched to Mac and both my wife and I need OWA for work. I had tried lots of combinations of IE versions and CrossOver bottles but no luck.

This is great now!

SG said...

Hi, I tried this successfully on my MacBook Pro with CrossOver and IE6.

But then when I bought a new MacBook Pro and tried it again with a fresh install, I do get the ability to use OWA full power (no light), BUT when I type my password, it just refreshes the OWA login page and doesn't really submit my login.

Anyone else seen this?

Stephen

Andrew D said...

Coupon code DEADDUCK provides a 50% discount on Codeweavers products, making the solution only $19.98!