• 1. London, UK
  • 2. New York, NY
  • 3. Sydney, Australia
  • 4. Melbourne, Australia
  • 5. Moscow, Russia
  • 6. Singapore
  • 7. Paris, France
  • 8. Chicago, IL
  • 9. Hong Kong
  • 10. Houston, TX
Bharat Suneja

Monday, June 30, 2008

 

Exchangepedia turns 4!

Posted by Bharat Suneja at 11:00 AM
Yes, Exchangepedia Blog is 4 years old today! Exchangepedia saw its first posts in June 2004. Hundreds of posts, 1 major Exchange release and 2 service packs (Exchange Server 2003 SP2 and Exchange Server 2007 SP1) later, it's great to look back at some of the stuff I've enjoyed writing, and some posts that got great feedback.

Exchangepedia turns 4

Feedback?
Feedback about the content and other aspects of Exchangepedia is always welcome and valued. Sorry, I'm unable to reply to each comment and cannot respond to each question, I do read all of them.

With that in mind, if you have any feedback on the posts, screenshots, "screencasts", scripts, design, content, topics, etc., please leave a comment.

- Has it been useful for you?
- Is it interesting to read?
- Do the posts here help you resolve any deployment/operations issues or clarify a concept?
- Are there additional topics you'd like to see covered here?
- Would you like to see any changes to anything on the blog - the content, the design, anything? (Except for adding a Search box, which is on the top of my list... )?

In the 5th year of its existence, I do intend to finally move Exchangepedia off the Blogger platform, and no— it being a Google product really has nothing to do with it. I love Wordpress, and would like to play with Joomla! or Community Server as well— time permitting. Migrating all the content, comments, and keeping existing URLs is a bigger and more complicated project than I thought.

Finally, the traffic has been rising steadily, and the existing server that's been hosting this blog since day 1 seems to be limiting. I would really love to move off the 400-Mhz. Pentium 3 box that's been serving this site (and quite a few other web sites, including some Wordpress ones)— maybe to a Windows Server 2008 web server running inside a Hyper-V virtual machine. If my tests with Wordpress on Windows 2008 go well, I will hopefully be able to do that soon.

Meanwhile, if you know of a "Migrate This" button I can click on to migrate all posts, comments and URLs from Blogger to Wordpress, please email me!

Labels: ,

 

Save XP, Rick Mercer Style

Posted by Bharat Suneja at 8:00 AM
It's June 30th! I had the date marked because of two reasons. The first one has to do with Windows XP, and if you haven't heard enough already, CBC's Rick Mercer has his own view of how to save Windows XP. Caution: May not be entirely work-safe for some.



The second reason's coming up in a post after the break, and it has absolutely nothing to do with Windows XP or Windows Vista!

Labels: , ,

Friday, June 27, 2008

 

Released: Windows Server 2008 Hyper-V

Posted by Bharat Suneja at 3:13 PM
While I was away yesterday, Windows Server 2008 Hyper-V made its public debut (RTMed in Microsoftese). I know what you're thinking: Let the Microsoft PR storm begin, VMWare has a better virtualization product, and other unbloggable thoughts... :).

I've been using Hyper-V for a few months now, and all I can say is— it's been a great experience way before RTM, and I am impressed! Of all things Hyper-V that impress me, I'm blown away by the performance - it flies! This, on a desktop class machine (one that meets the CPU and other requirements, of course, but poorly-configured to be used as a server/Hyper-V box that's running quite a few virtual machines).

Next, the simplicity and ease-of-use. As InfoWorld's Randall C. Kennedy puts it:
As with most Server 2008 "roles," enabling Hyper-V was a simple matter of ticking a check box in Server Manager and picking a NIC for use by the virtual network manager.
Read more of Randall's review in Test Center review: Microsoft's Hyper-V does the trick.

Scott has a post with plenty of links to Hyper-V resources and blog posts— Hyper-V has RTM'd and is Available!

As Scott mentions in the post, Microsoft will have a support statement about Exchange Server and virtualization 60 days from Hyper-V RTM. This was announced at TechEd IT Pro in Orlando little over 2 weeks ago.

Labels: , , ,

Tuesday, June 24, 2008

I remember writing plenty of scripts to report on different things such as user accounts created every week/month, user accounts modified, accounts disabled, etc. for SOX compliance. Some of those scripts used to be rather long, and in hindsight— involved a lot more lines of code than an administrator should have to write. Although I had a lot of fun (and still do... albeit with PowerShell), I would totally understand if you said you never wanted to hear about things like Wscript, VBScript, WSH, COM objects, ADSI, and WMI ever again.


Let's take a look at how the shell (EMS) makes it so easy.

In this example, we need to get a list of all accounts created in the last 7 days. When a user account is created, its whenCreated attribute gets stamped with the time of creation. Here's how it can be used:

Get-User -resultsize unlimited | where {$_.WhenCreated -gt (get-date).adddays(-7)} | ft Name,whenCreated -Autosize

Similarly, when an AD object is changed, it's whenChanged attribute gets stamped with the time the change was made. This makes it easy to determine which objects were changed in a given period, a useful tool for auditing/reporting as well as troubleshooting. In the following example, we determine if any Receive Connectors were changed in the last 7 days.

Get-ReceiveConnector | where {$_.whenChanged -gt (get-date).adddays(-7)}

Another frequently required and requested report— how do I get a list of mailboxes that haven't been accessed in the last X days. Let's use 100 days as the value here:

Get-MailboxStatistics -resultsize unlimited | where {$_.LastLogonTime -lt (get-date).AddDays(-100)} | ft displayName,lastlogontime,lastloggedonuseraccount,servername

Or mailboxes that have never been logged on to:

Get-MailboxStatistics -resultsize unlimited | where {$_.LastLogonTime -eq $null | ft displayName,lastlogontime,lastloggedonuseraccount,servername

Note, you can filter mailboxes by Database or ServerName to restrict the results to a more manageable size.

Disconnected/Disabled Mailboxes
Next, let's list mailboxes disabled in the last 14 days:

Get-MailboxStatistics | Where {$_.DisconnectDate -gt (get-date).AddDays(-14)} | ft displayName,ServerName,DatabaseName,TotalItemSize -Autosize

Labels: , , ,

Monday, June 23, 2008

 

Released: Transporter Suite v08.02.0053

Posted by Bharat Suneja at 7:44 AM
An updated version of the Transporter Suite— a set of tools for interoperability and migration from Lotus Domino and generic POP/IMAP servers to Exchange Server 2007, has been released.

Download Transporter Suite v08.02.0053 from here.
Updated release notes are here.

If you're getting started on an interop or migration project, take a look at Resources for Interoperability and Migration from Lotus Domino.

Labels: , , ,

Friday, June 20, 2008

Recently got a question about customizing the GAL and my previous post that talks about it: "HOW TO: Modify Display Template to make default email address appear in Address Book/GAL".

The new Details Template Editor in Exchange 2007 (in EMC | Tools) makes it much easier to modify templates and give your GAL the kind of look you want (short of adding that 5 Mb. purple bitmap file as a background and an extra-large company logo perhaps... :). Screenshots and more information about Details Templates can be found in Managing Details Templates.

So, you're trying to customize the properties pages of your address lists and want to add an attribute such as ipPhone. You don't see the attribute you're looking for. Can you add additional attributes to the list? Or should you? Dave Goldman explains in Adding attributes to the Exchange details templates.

Labels: , , , ,

In How to get a list of Exchange ActiveSync users we list EAS users on Exchange 2007. Some users may have more than 1 device, or perhaps the user simply got a new smartphone and the old device partnership has not been removed.

Output from Get-ActivesyncDeviceStatistics -mailbox [email protected]:


FirstSyncTime : 12/22/2007 1:34:10 AM
LastPolicyUpdateTime : 12/22/2007 1:34:43 AM
LastSyncAttemptTime : 1/14/2008 7:45:15 AM
LastSuccessSync : 1/14/2008 7:45:15 AM
DeviceType : PocketPC
DeviceID : *******************************
DeviceUserAgent :
DeviceWipeSentTime :
DeviceWipeRequestTime :
DeviceWipeAckTime :
LastPingHeartbeat :
RecoveryPassword : ********
DeviceModel : WIZA100
DeviceIMEI : ************21900
DeviceFriendlyName : Pocket_PC
DeviceOS : Windows CE 5.2.19134
DeviceOSLanguage : English
DevicePhoneNumber : 1650*******
Identity : [email protected]\AirSync-PocketPC-*******************************

The * characters in the Identity field are for the DeviceID.

Here's a a quick code snippet (it can probably be scrubbed up a little... ) that will list users and all their devices, along with first sync and last successful sync times:

$mbx = get-casmailbox | where {$_.hasactivesyncdevicepartnership -eq $true -and $_.identity -notlike "*CAS_{*"} ; $mbx | foreach {$name = $_.name; $device = get-activesync devicestatistics -mailbox $_.identity; $device | foreach {write-host $mbx.name, $_.devicemodel, $_.devicephonenumber, $_.deviceid, $_.FirstSyncTime, $_.LastSuccessSync} }


Update: 10/2/2008:
Making it more efficient: Filtering on the server-side using -Filter
Well, the above code could be scrubbed up a little. Rather than getting all mailboxes using Get-CASMailbox and filtering them on the client-side using the Where-Object cmdlet, a more efficient way of doing this is filtering on the server-side using the -Filter parameter, and getting only the mailboxes which have an ActiveSync device partnershp.

Yes, I've just realized HasActiveSyncDevicePartnership is in fact a filterable property, listed under Advanced Filterable Properties in Filterable Properties for the -Filter Parameter in Exchange 2007 SP1.

Here's the updated version:

$mbx = get-casmailbox -Filter {HasActivesyncDevicePartnership -eq $true -and -not DisplayName -like "CAS_{*"}; $mbx | foreach {$name = $_.name; $device = get-activesync devicestatistics -mailbox $_.identity; $device | foreach {write-host $mbx.name, $_.devicemodel, $_.devicephonenumber, $_.deviceid, $_.FirstSyncTime, $_.LastSuccessSync} }

The output looks like this:

Bharat Suneja WIZA100 16501231234 353B7ACF5014C020CE22CBF1DB7FFD92 11/5/2007 7:41:29 AM 12/20/2007 11:00:15 PM
Bharat Suneja WIZA100 16501231234 7E6B67F47DFD370E89BE13280A75EAA5 12/22/2007 1:34:10 AM 1/14/2008 7

Labels: , ,

Thursday, June 19, 2008

Microsoft recently started allowing community content (annotations/links) in Exchange documentation on TechNet. Initially available for Exchange 2003 documentation, this feature was recently expanded to Exchange 2007 documentation as well.

At the bottom of each page in Exchange documentation (on TechNet) you'll see the links to add community content.

Screenshot: Links to add community content in Exchange documentation pages on TechNet
Figure 1: Links to add community content in Exchange documentation pages on TechNet

This is a great way to share your Exchange expertise and add more value to Exchange documentation - you can add your code snippets, undocumented scenarios, tips & tricks, links to relevant content on web sites/blogs— yes, links to your blog posts too!

The wiki-zation of Exchange documentation has begun!

For an example of what this looks like, check out the Messaging Records Management (MRM) docs:
1) How to Create Managed Content Settings
2) How to Apply a Managed Folder Mailbox Policy to User Mailboxes

Registration required. Here's the code of conduct, and answers to some frequently asked questions are in this faq.

What it's not...
This is not a place to post product feedback or new feature requests. You can provide new feature requests by email to exwish at microsoft. It's also not a place to post requests for help with any issues— that's better handled in Exchange newsgroups and TechNet Forums, where you can get assistance from expert IT Pros, including MVPs, and Microsoft folks.

Labels: ,

When ISA Server 2006 SP1 rolls out this summer, there will be some cool new features to look forward to, including support for SAN certificates.

Having started using Proxy Server 1.0 (I know... hold on to your comments for now.. :) back in the days, I turned away from ISA's predecessor(s) for a few years to engage with what I thought were better options at that time— "dedicated" hardware firewalls. Not too long ago, I started using ISA again, and became a convert with ISA 2006. It made "publishing" (am I the only one who finds the phrase "publishing to the internet" amusing?) Exchange services such as OWA, EAS, Outlook Anywhere, and SMTP secure and relatively effortless.

If you have ISA 2006 deployed with Exchange Server 2007, you're probably looking forward to SP1 as well for its SAN certificate support. Check out the other cool features in this post on the ForeFront TMG (ISA) team blog: ISA Server 2006 Service Pack 1 Features.

Labels: ,

Wednesday, June 18, 2008

 

HTC Touch Diamond: Cure for iPhone Envy?

Posted by Bharat Suneja at 1:02 PM

While I was out at TechEd last week, the new 3G iPhone was announced. From the previous announcement, we knew it'll have EAS support. While many await the new EAS-capable, 3G iPhone, and yet many debate on whether it'll make inroads in the enterprise, there's something else on the horizon that's quickly becoming the object of desire for many folks. Yes, I'm talking about HTC's Touch line of Windows Mobile phones, and the HTC Touch Diamond.

Looks like an exciting new version of Windows Mobile? It's actually the current version of WinMo— v6.1. With HTC's own shell on top called HTC TouchFLO™ 3D. Yes, you can touch, swipe, shake, rattle, and roll. :)

A glance at the features:
- 2.8" LCD
- HSDPA connectivity
- 3.2 Megapixel camera
- 4Gb memory
- Integrated GPS

To top it all, the dimensions— it's 11.35 mm thin and weighs all of 110g, with batteries!

More info about the Touch Diamond on the HTC web site.

Engadget reports spotting the Touch Diamond at CompUSA. I'm waiting to get my hands on one of these.

Update: Available on CompUSA.com, unlocked, for $779.

Labels: ,

Tuesday, June 17, 2008

 

Starting Task Manager in RDP or VM sessions

Posted by Bharat Suneja at 5:49 PM
You have a RDP (Terminal Services) session or a Virtual Machine session open, where the CTRL-ALT-DEL key combination fires up the Windows Logn/Security dialog on the host computer rather than the RDP or VM session you have open.

Getting to the Task Manager involves some mouse-clicks in such situations— Start -> Windows Security -> Task Manager (works in both RDP and VM sessions) or clicking on the appropriate shortcut in the VM client software. Hyper-V has a short-cut on its menu bar that makes it a single mouse click, but still not quick enough. It's actually annoying if you are happily pounding away at the keyboard for most part... and now need to lift your hand to grab a mouse and... you know where we're going with this!

Shorcuts exist - if you're at the cmdline, you can simply type taskmgr.exe (or Start -> Run -> type taskmgr.exe). Alternatively, you can create a desktop shortcut and point it to taskmgr.exe. If you simply want to remain at the cmdline and not bother with the GUI at all, use TaskList. You can filter the output in a number of ways - use tasklist /? to see all the options.

If you're on an Exchange 2007 box or have Windows PowerShell installed, it gets event better. Get-Process and Stop-Process commands are your friends here. You can filter by process name or PID, and also pipe the output from Get-Process to Stop-Process. For example:

Get-Process -Name svchost
Get-Process -Name MSExchange* | ft Id,Name,Handles,PM -AutoSize
Get-Process | ft Name,Company,ProductVersion,FileVersion -Autosize
Stop-Process -ID 6064
Get-Process mmc* | where {$_.Handles -gt 1000} | stop-process

Labels: , ,

Monday, June 16, 2008

The first of the three free web chapters of "Exchange Server 2007: The Complete Reference" was released last week on the book's companion web site.

I also found out about the numerous electronic editions of the book— yes, the Acrobat eBook, MobiPocket Reader, Microsoft Reader and Kindle editions are now available!

Thanks to all of you who stopped by at the book signing at TechEd last week.
 

Quick antispam report or status check?

Posted by Bharat Suneja at 8:06 AM
Having received an annoyingly higher proportion of spam in my Inbox this morning, I wanted to quickly check what the antispam agents are doing. Here's a quick cmdlet (besides the ones to check whether the antispam agents are enabled, checking the Content Filter SCL thresholds, etc.).

Get-AgentLog -StartDate "6/16/2008" | group action | ft name,count -Autosize

What you get back:

Name Count
---- -----
RejectCommand 520
AcceptMessage 39
RejectMessage 163
QuarantineMessage 11
DeleteMessage 21

The filters are still working. Perhaps it's one of those days when you wake up to high volume of spam.

Note to self: Create a quick monitoring script that provides more information from agent logs, antispam configs, and perfmon counters.

Related posts:
- Keeping tabs on Antispam filters: A few handy scripts in Exchange Server 2007
- Exchange Server 2007: How are RBLs performing?
- Exchange Server 2007: Managing And Filtering Anti-Spam Agent Logs

Labels: , , , ,

Sunday, June 15, 2008

 

What is an Azalia controller?

Posted by Bharat Suneja at 9:08 AM
Last night I got my Media Center PC back from repairs with a brand new motherboard, new hard drives, and a new TV tuner. Yes, that's almost like a new computer— one of those rare occasions when I've bought extended warranty for a computer and actually found it worthwhile.

After installing Windows Vista I tried to setup Media Center, but it failed to display any video or play any sound. The error— no sound device, a non-starter for Media Center PCs.

Vista's Device Manager did not show any sound cards/devices! Did the repair department at Fry's Electronics (parts of this electronics/computer retail chain are quite annoying to deal with, particularly their business processes that seem to be straight from the early twentieth century, or at least a few decades behind, including a total lack of customer service... ) replace the motherboard with one that does not have a sound card?

After fiddling around with the BIOS for a little bit, I realized the "onboard Azaliza controller" was disabled. Yes, I pass through that screen in the BIOS configuration for a few times with no clue what it was! Azalia is the development codename for Intel's High Definition Audio Specification, a replacement for the Audio Codec '97 (popularly known as AC97) spec for on-board audio.

Although I'm a big fan of cool-sounding product code names that can generate plenty of excitement amongst product teams, customers, and the media, this one certainly had me feeling like an annoyed and confused user. Wouldn't it be a good idea to switch to a meaningful name when shipping the product— particularly a BIOS that generally comes with little or no documentation besides what's on the screen?

Did you know about Azalia controllers? Do you have your stories of product names or code names that made no sense and proved to be annoyances? Feel free to post them in the comments.

Labels:

Thursday, June 12, 2008

An updated version of the Mailbox Server Role Storage Calculator (let's just call it Storage Calculator or StorageCalc? :) has been released. More details about v14.7 in Ross' post on the team blog: Updates to the Mailbox Server Role Storage Requirements Calculator.

Labels: ,

Wednesday, June 11, 2008

Windows Server 2008's new Windows Server Backup utility, the replacement for NTBackup, doesn't do Exchange backups out of the box.

I'm in Scott Schnoll's session where he just announced a new Microsoft plug-in that will do Exchange VSS backups. The tool will be released this summer.

More notes from this excellent session soon!

Labels: , , ,

Tuesday, June 10, 2008

Exchange Server 2007: The Complete Reference started shipping recently. (OK, it's been a few weeks, so I'm stretching the definition of the word "recently" to cover up for the fact that I didn't post about this sooner...)

As Exchange MVP and coauthor Richard Luckett puts it, "Writing a book, sustaining a career, and spending precious time with family are all desirable goals, but difficult to manage all at once. Over the last year and a half of writing this book, I have stretched the boundaries of all my personal and professional relationships". I couldn't agree more!

McGraw Hill has a book signing today at the Digital Guru bookstore at TechEd. Richard and I will be present. Exchange MVP William Lefkovics plays the missing coauthor role.

What: Book Signing - Exchange Server 2007: The Complete Reference
Where: Digital Guru bookstore at TechEd IT Pro 2008
When: 4:15-4:30 PM today (June 10, 2008)

If you're at TechEd, stop by and say Hi! If you can't make to the book signing, you will find me at the Exchange Server booth all mornings.

Labels: ,

Monday, June 09, 2008

Scott Schnoll is presenting two sessions at TechEd this week:
1. Microsoft Exchange Server 2007 SP1: Tips & Tricks:
When: Wednesday, June 11 2:45 PM - 4:00 PM
Where: N220 D
What: This session provides an overview of how to gather diagnostic and troubleshooting information for Exchange Server 2007 focused on performance, connectivity, and services, as well as details about the best tools to use for quickly resolving issues.

2. Advanced Troubleshooting Strategies for Exchange Server 2007
When: Friday, June 13 1:00 PM - 2:15 PM
Where: S230E
What: This session provides an overview of how to gather diagnostic and troubleshooting information for Exchange Server 2007, as well as details about the best tools to use for quickly resolving issues.

Scott also promises a major Exchange announcement during his first session on Monday! More in Scott's blog: Microsoft TechEd IT Pro 2008

Labels: , ,

Friday, June 06, 2008

 

Exchangepedia: A search hack

Posted by Bharat Suneja at 2:12 PM
Playing with custom error pages early this a.m., and here's a way to search Exchangepedia. Go to the search page - http://exchangepedia.com/search.aspx, ignore the "this page couldn't be found" error, and use the search.

Note: Sorry, it doesn't seem to work as a link. You will need to type the URL manually: exchangepedia.com/search.aspx

Yes, not the best way to search - once I get enough time a Search box will end up in the top banner on all pages. Meanwhile, please use this workaround.

Please leave feedback and let me know if the workaround works!

Labels:

Wednesday, June 04, 2008

 

Perfmon counters show up as numbers?

Posted by Bharat Suneja at 12:22 AM
You're troubleshooting an important issue and fire up Performance Monitor, only to be greeted by this bizarre visual— all your Perfmon counters show up as numbers! You restart Perfmon a few times, try to choose a different performance object - but it's still numbers.


Figure 1: Performance Monitor counters and objects are displayed as numbers instead of object and counter names

Fix:

Lodctr.exe /r

It can take a little while (about 10 minutes in this case).

Labels: ,

Monday, June 02, 2008

The Exchange Server 2007 base package does not include MAPI client libraries and CDO components that can be used by applications. MAPI and CDO are used to programmatically connect to Exchange Stores. These have been released as a web download.

Download ExchangeMapiCdo.MSI from microsoft.com.

Labels: , ,