How to disable the "Sent by Microsoft Exchange Server 2007" branding sentence in an Exchange Server 2007 DSN message

So Anderson posted this, and my initial thought was huh?  The KB didn’t really explain either, so it was time for a test.

 So the KB will allow you to remove the circled text below:

And it’s a nice simple PowerShell Command:

Set-TransportConfig WritingBrandingInDSNEnabled $false

But you do need to have Exchange 2007 SP1 with RU3

Sorry about that

small service outage lastnight / this morning .. .My server Blue Screened, rebooted and was waiting at the good olde Windows Shutdown Event Tracker screen. So cleared that and then my blog vm has the same so sorted that two.

 Found this blog, so the damm screen doesn’t come back any more :-|

How to: Disable the Shutdown Event Tracker in Windows 2003

Easy really ..

Open the Group Policy Object Editor Console. Go to Start > Run…, type gpedit.msc and press OK.

Navigate to Computer Configuration > Administrative Templates > System and in the right hand pane, select the “Display Shutdown Event Tracker” setting. Set it to disabled!


OST performance slow? Defrag it

I found this up on BlankMan’s Blog and it’s damm cool.

… One of the frustrating realities about OST files is that they become progressively slower as they become older. One of the factors influencing this is fragmentation.

 As the Exchange Team blog says: 
“We usually recommend no more than about 2500 – 5000 messages in any of the critical path folders.  The critical path folders are the Calendar, Contacts, Inbox, and Sent Item folder. Ideally, keep the Inbox, Contacts and Calendar to 1000 or less.  Other folders, particularly custom folders created by the user, can handle having larger numbers of items without having a broad impact on the user experience (20,000 items in my “Cookie Recipes” folder?  No problem – except when I need to find that recipe from last Christmas!).”

So the more folders, the slow thing go … so BlankMan used Contig.exe from Sysinternals to defrag is OST :-|.  Contig is a single-file defragmenter that attempts to make files contiguous on disk and is perfect for quickly optimizing files that are continuously becoming fragmented, or that you want to ensure are in as few fragments as possible.

The syntax for Contig.exe:

Contig v1.54 – Makes files contiguous
Copyright (C) 1998-2007 Mark Russinovich
Sysinternals –

Contig is a utility that relies on NT’s built-in defragging support
to make a specified file contiguous on disk. Use it to optimize execution
of your frequently used files.

    d:utilsContigContig.exe [-v] [-a] [-s] [-q] [existing file]
or  d:utilsContigContig.exe [-v] -n [new file] [new file length]

  -v: Verbose
  -a: Analyze fragmentation
  -q: Quiet mode
  -s: Recurse subdirectories

So lets check out my OST:

C:>d:utilsContigContig.exe outlook0.ost -a

Contig v1.54 – Makes files contiguous
Copyright (C) 1998-2007 Mark Russinovich
Sysinternals –

Processing outlook0.ost
outlook0.ost is in 42 fragments

     Number of files processed   : 1
     Average fragmentation       : 42 frags/file

d:utilsContigContig.exe outlook.ost -a

Contig v1.54 – Makes files contiguous
Copyright (C) 1998-2007 Mark Russinovich
Sysinternals –

Processing C:outlook.ost
C:outlook.ost is in 61 fragments

     Number of files processed   : 1
     Average fragmentation       : 61 frags/file

so time to defrag

C:>d:utilsContigContig.exe outlook.ost

Contig v1.54 – Makes files contiguous
Copyright (C) 1998-2007 Mark Russinovich
Sysinternals –

Processing C:outlook.ost

     Number of files processed   : 1
     Number of files defragmented: 1
     Average fragmentation before: 61 frags/file
     Average fragmentation after : 1 frags/file

Kewl, now lets check it out
C:d:utilsContigContig.exe outlook.ost -a

Contig v1.54 – Makes files contiguous
Copyright (C) 1998-2007 Mark Russinovich
Sysinternals –

Processing outlook.ost
C:outlook.ost is defragmented

     Number of files processed   : 1
     Average fragmentation       : 1 frags/file

Kewl ;-) Thanks BlankMan!

ESE:Logging/Recovery EventID: 454

So we had this issue today on an Exchange 2000 SP3 Public Folder Server

When we tried to mount a database it logged this in the Application Eventlog

Event Type: Error
Event Source: ESE
Event Category: Logging/Recovery
Event ID: 454
Information Store (2892) Database recovery/restore failed with unexpected error -566.

On further investifation the -566 ( this means:
Under Exchange 2000 and later versions, each log record has a before and after timestamp that is named DBTIME. When a transaction is scheduled to be written into a page in the database, if the DBTIME timestamp value in the log record is higher than the DBTIME timestamp value on the page, ESE 98 logs the following error in the application event log:
JET_errDbTimeTooOld (-566)

Dumping the database header showed: “State: Dirty Shutdown

Dumping the edb header is said: Log Required: 784049-785058, so we then moved all the log files that the database said it needed and ran an Eseutil /r we saw this:

Microsoft(R) Exchange Server(TM) Database Utilities
Version 6.0
Copyright (C) Microsoft Corporation 1991-2000.  All Rights Reserved.

Initiating RECOVERY mode…
    Logfile base name: e01
            Log files: e:
         System files: e:

Performing soft recovery…

Operation terminated with error -566 (JET_errDbTimeTooOld, dbtime on page smalle
r than dbtimeBefore in record) after 5.16 seconds.

An eseutil /k e01 didn’t work for checking log files, so we copied eseutil.exe and ese.dll from an Exchange 2003 server and ran it again.  This showed that No damaged log files were found.”

So we dropped some older log files into the log and ran an eseutil /r and it worked :-|, so  the “Log Required” value on the database was wrong!

One the eseutil /r was finished the database reported “State: Clean Shutdown” and it mounted.  It took just over 4hr to work this ;-)

.. Thanks Will & Vanda for you help

Microsoft IT Showcase: Messaging

I know you already know about this, but this is for my reference, so I remember to look here in the morning.

Find here Microsoft IT’s early adopter experiences, best experiences, and lessons learned from our own deployments of Messaging solutions within our global enterprise. By leveraging our best practices, you can make decisions about how best to plan for, deploy, and manage Microsoft solutions in your own environment.

I am interested in these, but check the rest of the list out:


New Online Testing Tool from the Microsoft Exchange team

Check this out, Sembee just posted an awesome blog


A new tool from the Microsoft Exchange team, currently in prototype/development may well be something to help you. can currently test Autodiscover, Outlook Anywhere (which should work for Exchange 2003 and Exchange 2007), ActiveSync and inbound SMTP.

Forefront for Exchange Rollup 2

Talking to Joe today and he applied Forefront RU2 to an Exchange 2007 SCC Cluster.What he didn’t expect what that Forefront stopped updating with the following error:

Event Source:   GetEngineFiles
Event Category: Engine Error
Event ID:       6012
Microsoft Forefront Server Security encountered an error while performing a scan engine update.
Scan Engine: AhnLab
Error Code: 0x80090005
Description: The product license has expired.

CAS/HUB servers continued updating with no problems.  He removed RU2 and updates work again!

What he did find is that when you do to Help/About on the Forefront console it said that the expiration date was the 31st March 2009!

Beware my fellow readers.  Any views, comments or workaround (apart from removing RU2) .. let me by posting a comment!

Task Manager: Connect / Remote Control

Sarad showed me this and I have been using it ever since.

When we upgraded to Exchange 2007 to Service Pack 1, I RDPed to the server to perform the upgrade.  I knew it would take an age on an SCC mailbox cluster, and I didn’t want to wait around in the office for it to finish.

So I left and went home.  Once at home I RDPed to the server using a different account, started  up task manager, and selected the Users Tab.  I could see my new log on and my original one.  I then right clicked my original one, selected connect.  It asked me for my password, and then I was connected to my original session!

The other one, is that Sarad wanted me to watch his install.  So I done the same, RDPed to the server and started up task manager.  Selected the User Tabs, and right clicked on his user Account and selected Remote Control.  He was prompted that I wanted to remote control and then I could see his RDP session. 

How cool is that!

SMS Trace

This is another John showed me.  You know much of a pain in the butt it is to keep opening and closing log files while you wait for stuff to be written to them.

Not any more.  SMS Trace from the Systems Management Server 2003 Toolkit 2 allows you to open a log file and it will “auto update” when the log is appended to!

You can get the Systems Management Server 2003 Toolkit 2 from here:

KB13732: How to move from a local to a remote BlackBerry Router service

Need this article the other day.

Two Blackberry servers, one in another country.  bbsrptest worked for both, but when we went install Blackberry, bbsrptest failed :-| Now the firewall guys swear they didn’t make any change (yeah right) but we need to get Blackberry working ASAP, while they sorted out why bbsrptest wasn’t working!

John found this and it works a dream.  Basically you can route a Blackberry server via another Blackberry server to get out to the RIM on the internet.  Nice!

Source: 0 116038086

How to move from a local to a remote BlackBerry Router service

On the remote server:

  1. Select Start > Run and type regedit to open the Registry Editor.
  2. Go to HKEY_LOCAL_MACHINESOFTWAREResearch In MotionBlackBerryRouter, then double-click AllowRemoteServices.
  3. Change the Value data field entry to 1, then click OK.
  4. Close the Registry Editor, then restart the BlackBerry Router service.

On the local server:

  1. Open BlackBerry Server Configuration, then select the BlackBerry Server tab.
  2. In the Router Host field, type the host name of the new Router service and click Apply then OK.

It is that simple!