Microsoft have released an updated version of the Exchanger 2013 Server Roles Requirements Calculator.

In addition to numerous bug fixes, this version includes new functionality: CPU utilization table, ReplayLagManager support, MaximumPreferredActiveDatabases support, Restore-DatabaseAvailabilityGroup scenario support, and guidance on sizing recommendations. You can view what changes have been made or download the update directly.

Read the full article here.


I have been working with a customer recently when they needed to enable all the users in a certain OU with the exception of a small bunch of users. The way I chose to do this was suggest using a security group to define the exceptions and then use a script to enable everyone who was in the designated OU with the exception of the users in the designated security group.

I have found several other posts across the Internet where people have enabled from an OU but not with the security group exception so I put together this script and thought I'd share it for others to use.

I was scheduling the script file to run on one of the Lync front end servers every day so that any new users will be automatically enabled if they are in the correct OU and not a member of the security group.

The script will also Lync disable users who are currently enabled and then added to the security group.

Below is the script, just copy and save as a .ps1 file and your done.




I was recently working on a project where users were getting new laptops issued to them and this involved users having to have their passwords changed afterwards to ensure security. Rather than do it manually I cooked up this little script with a little help from Google.

The script will look for a CSV file in the location C:\Scripts\Users.csv and will only be looking for one column called SamAccountName. If the file doesn't exist in that location or the CSV file it finds doesn't have a SamAccountName column it wont work and will fail.

If you do use the script you can always change the path manually in the script to where you have stored the CSV file. I may update the script when I get chance to put it into a variable that can be passed into the script but that's for another day.

The script will then read the contents of the CSV file and for each entry it will set the 'User must change password at next logon

Here is the script itself


I have today experienced first hand the issue being hotly discussed in this Microsoft forum.

Basically Windows Update seems to have stopped working for those Windows Server 2003 machines some of us still have out there. Checking for Windows Updates returns this error:

WU-Error-80248015 ...continue reading "Error 0x80248015 checking Windows Update on Windows Server 2003"

Earlier this week the Microsoft Exchange product team released the latest version of the Server Role Requirements calculator, now at version 6.6

The Exchange Server role requirements calculator is essential for proper design and planning of your Exchange Server environment and it even includes recommendations for your client access servers too!

For more information and to download it check out the Exchange Team blog here

Over time we have all experienced the slowness of WSUS increase and wondered what if anything can be done about it. Running the WSUS cleanup wizard is a good start but if you want to go that bit further then you should take a look at the WsusDBMaintenance.sql script that Microsoft have provided. The WSUSDBMaintenance script is a T-SQL script that can be run by SQL Server administrators to re-index and defragment WSUS 3.0 databases. It is available from here It only took a few minutes to run in my environment and I now schedule it to run once a month to keep WSUS ticking along nicely

We have all had to move lots of data from one location to another at some time or another, some like me forget all the useful switches and have to keep looking them up on TechNet. I have included an example of a Robocopy I use most times when moving lots of data and explain the switches too ...continue reading "Useful Robocopy switches for copying large amounts of file data"

So imagine a situation where you have Office 365 and you synchronise your on premise Active Directory with Office 365 via DirSync or Windows Azure Active Directory Sync Tool to give its full name. One day an employee comes to you and informs you of their name change which you duly change in your on premise active directory and either wait for a sync to occur or trigger on manually. Then you find out that the users logon name in Office 365 hasn't changed so they are still logging in with their old logon name or worse they cannot access their mailbox. ...continue reading "Changing a user’s logon name in Office 365"

This is a quick guide on using PowerShell to assign Office 365 licenses to existing users that you have previously created. I've used this in environments where I have created large numbers of users in Office 365 using PowerShell as described in this post and then needed to assign licenses to those users so they can use their Office 365 mailboxes etc. ...continue reading "Licensing new Office 365 users"