Warning Event 9327 from MSExchangeSA

In this case Warning Event 9327 from source: MSExchangeSA was logged in Application Event log on Exchange 2010 server responsible for OAB generation by default every day on 5 AM:

Log Name:      Application
Source:        MSExchangeSA
Date:          12/1/2014 5:04:50 AM
Event ID:      9327
Task Category: (13)
Level:         Warning
Keywords:      Classic
User:          N/A
Description:
OALGen skipped some entries in the offline address list '\Global Address List'.  To see which entries are affected, event logging for the OAL Generator must be set to at least medium.
- \Default Offline Address List

By default, event logging for the OAL Generator is set to lowest level. In order to see why some entries are skipped by OAL Generator, event logging level must be set to at least medium. One way to set this requirement is by using PowerShell :
Set-EventLogLevel -Identity "ExchangeServerName\msexchangesa\oal generator" -Level Medium

Setting the logging level to Medium for the OAL generator will produce a lot of events during the generation of OAB. Informational events generated from MSExchangeSA with Event ID 9359 can be safely ignored, but error events with id 9325 are the one that are triggering the event id 9327 from MSExchangeSA. For example:

Log Name:      Application
Source:        MSExchangeSA
Date:          12/25/2014 5:04:03 AM
Event ID:      9325
Task Category: (13)
Level:         Error
Keywords:      Classic
User:          N/A
Description:
OABGen will skip user entry 'John Doe' in address list '\Global Address List' because the SMTP address '' is invalid.
- \Default Offline Address List

John Doe was not having email address, but was having "ShowInAddressBook" property populated. So, in order to fix this behavior, I've created mailbox for this user, and after that immediately disabled the mailbox for this user, and all exchange related properties were cleared from this user.

Now, return (set) the event logging level for the OAL generator to default (lowest) value:
Set-EventLogLevel -Identity "ExchangeServerName\msexchangesa\oal generator" -Level Lowest
And, warning Event 9327 from source: MSExchangeSA was not logged in Application Event log on Exchange 2010 server responsible for OAB generation in 5 AM.
 

Setting calendar permissions in Exchange 2010

This is quick post for reference, and is intended to show how to manage user's calendar permissions in Exchange 2010. Four PowerShell cmdlets are available for achieving this task:
For example:
  • To list (get) assigned calendar permissions on user Jane.Doe here is the syntax:
Get-MailboxFoderPermission -identity jane.doe:\calendar
  • To assign John.Doe Reviewer permission on Jane.Doe calendar (John does not have any permission on Jane's calendar):
Add-MailboxFolderPermission -identity jane.doe:\calendar -user "John Doe" -AccessRights Reviewer
  • To modify already assigned permission to John Doe on Jane Doe calendar from Reviewer to Editor:
Set-MailboxFolderPermission -identity jane.doe:\calendar -user "John Doe" -AccessRights Editor
  •  And finally to remove already added permission for John Doe on Jane Doe calendar:
Remove-MailboxFolderPermission -identity jane.doe:\calendar -user "John Doe"
 

Nokia E72 stopped synchronizing emails

In this case my friend's "oldie" phone Nokia E72 stopped synchronizing emails using ActiveSync. He was also unable to access his mailbox using outlook web access link.
The reason for this behavior was that the company's IT has replaced expiring certificate with new one (nothing odd here), but the new certificate was having sha256RSA signature algorithm. Nokia E72 was unable to access https web sites secured with sha256 certificates.
In order to fix this behavior fortunately there is a fix which will enable Nokia E72 to successfully access https web sites secured with sha256 certificates. You can download this fix from http://dl.nokia.com/ns/symfix/networking_improvements.SIS .

After installing this fix for Symbian, my friend was able to synchronize email using ActiveSync again, and started to open https web pages secured with sha256 certificates.
 

Remote Desktop Connection Manager 2.7

Remote Desktop Connection Manager (RDCMan) 2.7, finally is publicly available. For those who never used RDCMan, it's probably the best tool for managing multiple remote desktop connections, and it's free.
You can download the installation package from Microsoft Download Center http://www.microsoft.com/en-us/download/details.aspx?id=44989 .

 
Here are the supported operating systems: Windows 10 Tech Preview , Windows 7, Windows 8, Windows 8.1, Windows Server 2008, Windows Server 2008 R2, Windows Server 2012, Windows Server 2012 R2, Windows Server Tech Preview.


For users with OS versions prior to Win7/Vista will need to get version 6 of the Terminal Services Client. You can obtain this from the Microsoft Download Center: Windows Server 2003, XP.

Here are the new features:
  • Virtual machine connect-to-console support
  • Client size options come from the application config file (RDCMan.exe.config) rather than being hard-coded.
  • View.Client size.Custom menu item shows the current size
  • View.Client size => From remote desktop size
  • Option to hide the main menu until Alt is pressed. Hover over the window title also shows the menu.
  • Added Smart groups
  • Support for credential encryption with certificates
  • Better handling of read-only files
  • Added recently used servers virtual group
  • New implementation of thumbnail view for more predictable navigation
  • Thumbnail view remembers scroll position when changing groups, etc.
  • Performance improvements when loading large files
  • Allow scale-to-fit for docked servers (Display Settings.Scale docked remote desktop to fit window)
  • Allow scale-to-fit for undocked servers (Display Settings.Scale undocked remote desktop to fit window)
  • "Source" for inheritance in properties dialog is now a button to open the properties for the source node.
  • Focus release pop up => changed to buttons, added minimize option.
  • Added command-line "/noconnect" option to disable startup “reconnect servers” dialog
  • Session menu items to send keys to the remote session, e.g. Ctrl+Alt+Del
  • Session menu items to send actions to the remote session, e.g. display charms
  • Domain="[display]" means use the display name for the domain name.
And Bugs fixed:
  • Application is now DPI aware
  • Undocking a server not visible in the client panel resulted in the client not being shown in undocked form.
  • Ctrl+S shortcut didn’t work at all. It now works and always saves, even if there are no detected changes to the file.
  • Shortcut keys didn’t work when focus was on a thumbnail.
  • Add/delete profile in management tab. In same dialog instance, profiles are not updated. Similarly adding a new profile from combo doesn’t update the tab.
  • Window title was not updated when selected node is removed and no new node selected (open a file, close the file.)
  • Connect via keyboard didn’t always give focus when it should.
  • Connected Group would always show itself upon connecting to a machine, regardless of setting.
  • Selecting a built-in group then hiding via menu option didn’t work properly.
  • Editing server/group properties did not always mark a file as changed.
  • Non-changes could result in save prompts at exit. This should no longer happen.
  • Activating the context menu via the keyboard button was not always operating on the correct node.
  • Changing a server/group name doesn’t change window title if the server/group is currently selected.
  • ALT+PAGEUP and ALT+PAGEDOWN hotkeys were switched. This is fixed for new installs—for existing files you’ll want to change on the [Tools.Options.Hot Keys] tab.
  • /reset command line option wasn’t resetting all preferences
  • “Server Tree” option from “Select server” focus release dialog didn’t show the server tree if it was hidden.
  • New file directory now defaults to “Documents”.
  • ListSessions dialog sometimes popped up in a weird location. Now placed within the main window.

For more info please check the help.htm file located into the installation folder of RDCMan 2.7.

How to find matching mount points and volume guids ?

In this case I was experiencing VSS error events in application event log on one of the file servers. The related logged events were containing error information with associated Volume GUID instead of mount point (drive letter). Here is the example of the error event:
Volume Shadow Copy Service error: The shadow copy could not be committed - operation timed out. Error context: DeviceIoControl(\\?\Volume{GUID}

Since this error event was generated on file server with bunch of disk drives, I was wondering which mount point (drive letter) was associated with this Volume Guid.
One way to achieve this task was to run mountvol.exe without any switches. The output from this command looks like this:


Also, from Run dialog:


I could browse the contents of the drive, and figure out the drive letter.
Browsing the contents using Volume Guids from command prompt using dir requires additional backslash "\" at the end:


Another way is by comparing values in Registry in HKLM\System\MountedDevices for DosDevices and Volume Guids (picture contents are cropped):



At last, and I guess the best option is to use PowerShell and wmi. Win32_Volume class (not applicable for XP) will provide the necessary data by using DriveLetter an DeviceID properties. All filtering capabilities for filtering data using powershell are available, including querying the remote machines. For example, the following singleliner will return VolumeGuids and DriveLetters associated:


I guess all these methods will help you to find the matching pair :) If you have another way for matching volume guids and mount points, feel free to comment.
 

How to check EMBG (Unique Master Citizen Number) using regex

In this post, I will share my implementation of how to check if some number looks like EMBG or Unique Master Citizen Number. For those of yo...