Outlook Add-In and Timezone

 

Background

Right before this last weekend, started raiding our Remedy Ticketing system.

Found an interesting one with a bunch of JavaScript errors.

The actual application is a Microsoft Outlook Add-In.

The Add-In connects to a back-end web site.

 

Error Messages

JavaScript / Callback

Here are the well chronicled JavaScript errors:

GridCellClick.TypeError

GridCellClick

 

Callback e.BookingData is null or not an object – Method:GetOutlookPostData

Callback - e.BookingData is null or not an object

 

Callback ‘showAndHideLoader’ is undefined Method:getSelectedGrid

Callback - showAndHideLoader is undefined

 

Side By Side

Checked the MS Windows Event Log.

Activation Context generation failed for *.manifest

Checked Windows Error Log and found errors Sourced to SideBySide:

 

Image:

activationContextFailed-EventIDis9

 

Texual:


Activation context generation failed for *.manifest - Error in manifest or policy file - The manifest file root element must be assembly

 

 

Office Outlook Version Number

Confirmed the version Number of Outlook.

Office Outlook

Version Number

Get the current Version #.

 

Help About

14.0.7147.5001 x32_Daniel

Additional Version and Copyright Information

14.0.7147.5001 x32_AdditionalDetail

 

In our case, we are on MS Office 2010 – SP2.

 

Diagnostic

We performed a few diagnostic and repair steps.

The steps includes:

  • Running System File Checker (SFC)
  • Repaired Microsoft Office
  • Checked our Outlook Add-In Express Log folder (<homedrive>\my documents \ add-in express )

 

System File Checker ( SFC )

  1. Launch command line ( in Administrator mode )
  2. Issue “sfc /scannow”

 

Review Add-In Express Log folder

Where are “Add-In Express” log files?

  • What is your Homedrive?
    • Launch Command Prompt
    • Issue “set HomeDrive

 

whatIsHomeDrive

 

Add-In Express Files

Add-In Express Log files are kept in the HomeDrive \ My Documents \ Add-In Express

What files are in there:

  • adxloader.log
  • adxregistrator.log
  • Vendor Specific Add-In Express Log files

AddInExpressFiles

 

ADXLoader.log

adxloader.log - sample

Details:

  • Startup directory :- C:\Program Files (x86)\Condeco Ltd\Condeco Add-in V5\
  • Operating System :- Microsoft Windows 7 Enterprise Edition Service Pack 1 (build 7601), 64-bit
  • Command Line :- “C:\Program Files (x86)\Microsoft Office\Office14\OUTLOOK.EXE”
  • CLR version :- v4.0.30319
  • Assembly name :- CondecoAddinV2
  • Class name :- CondecoAddinV2.AddinModule
  • Registry key :- CLSID\{3F567CC8-72F9-4087-80E9-71DCAF3575F9}.
  • The directory :- C:\Program Files (x86)\Condeco Ltd\Condeco Add-in V5\
  • The configuration file :- C:\Program Files (x86)\Condeco Ltd\Condeco Add-in V5\App.config

ADXRegistrator.log

adxregistrator

 

Details:

  • Installation directory: C:\Program Files (x86)\Condeco Ltd\Condeco Add-in V5\
  • Registrator version: 7.2.4055.0
  • Operating System: Microsoft Windows 7 Enterprise Edition Service Pack 1 (build 7601), 64-bit
  • Process Owner: Administrator
  • Command Line: “C:\Program Files (x86)\Condeco Ltd\Condeco Add-in V5\adxregistrator.exe” /install=”C:\Program Files (x86)\Condeco Ltd\Condeco Add-in V5\CondecoAddinV2.dll” /privileges=user
  • Run ‘As Administrator’: No
  • Process Elevated: No
  • Integrity Level: Medium
  • UAC (User Account Control): On
  • .NET Framework installation directory:
    • The latest version of .NET Framework: ‘v4.0.30319’
    • Loading CLR: v4.0.30319
  • The directory is ‘C:\Program Files (x86)\Condeco Ltd\Condeco Add-in V5\’.
  • Searching for the Add-in Express core library.
    • Success. The ‘AddinExpress.MSO.2005.dll’ file is found.
    • Creating an instance of the ‘AddinExpress.Deployment.ADXRegistrator’ class.
    • Assembly identity is ‘AddinExpress.MSO.2005’.

 

Application Log Files

Enable Debug Logging

In Configuration\appSettings\EnableLogging, change value from 0 to 1.

enableDebugMode

 

Review Log File

Check Homepath\My Documents\Add-in Express and review the Application specific log file.

In our case, CondecoAddin.txt

Image

GetLocalTZName

Textual:


30/04/2015 12:46:12: &lt;strong&gt;GetLocalTZName&lt;/strong&gt;()&lt;strong&gt;Central Standard Time&lt;/strong&gt; (  䈨ﺺ߾ 氠;  @ 훐 ᳰ; 䄙ﺺ߾  榰; 芰5 蒸5 譐5  氠; 뀀㭩  ᖒﵷ߾ 䑀瞁 p 5
30/04/2015 12:46:12: GetLocalTZName() Catch FindSystemTimeZoneById - The time zone ID '&lt;strong&gt;Central Standard Time&lt;/strong&gt;(' was not found on the local computer.
30/04/2015 12:46:12: GetLocalTZName() Catch Fixed FindSystemTimeZoneById tzName-Central Standard Time(
30/04/2015 12:46:12: UtilityManager.PostDataToServer WITH URL:*********Started********

 

SysInternals

Process Monitor

Setup Filter:

Launch Process Monitor and filter on:

  • HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones\
  • HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation

 

HKLM\Software\Microsoft\Windows NT\CurrentVersion\Time Zones:

HKEY-LocalMachine-Software

 

HKLM\SYSTEM\CurrentControlSet\Control\TimezoneInformation:

 

 

HKEY-LocalMachine-Control-TimezoneInformation

Output:

TimezoneInformation

 

 

 

Remediation Steps

Timezone Settings

Registered Timezones

List all Timezones entries that are registered in the system.

Windows Registry

Defined Timezone settings are kept in MS Windows Registry; specifically in HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Time Zones

TimezoneRegistrySetting4CentralStandardTime

There are two choices to address missing or mangled Timezone entries.  And, those choices are:

  • Copy specific entries from working computer
  • Download the last Timezone patch directly from Microsoft

 

Current Timezone

We should also review our current timezone.

There are a couple of ways for doing so:

  • Control Panel \ Date and Time applet
  • Use Tzutil ( Windows® Time Zone Utility to manage available time zones )
  • Review registry key

Control Panel:

What is our current timezone?  The easiest way is to take the Control Panel\Date and Time applet path.

Timezone-ControlPanel

 

tzutil

Another way, is to go with tzutil.

And, so we issue “tzutil.exe /g“.

timezoneInfoCentralTimezone

 

Registry

HKEY_LOCALMACHINE\System\CurrentControlSet\Control\TimeZoneInformation

Here is what I have on my machine.

timezoneInformationFromRegistry

 

Resolution

After much head banging, I turned things over to our Vendor’s Engineering Manager.

He said he has seen it before and that it is properly a corrupt registry entry for the timezone.

And, so come Monday, over IM connected to our precious user’s desktop and tried the following:

  1. Launched regedit
  2. Captured the registry data in the HKEY_LOCALMACHINE\System\CurrentControlSet\Control\TimeZoneInformation branch
  3. Changed her timezone to Pacific Standard Time
  4. Launched Outlook and things worked out OK
  5. Closed Outlook
  6. Changed timezone back to her actual timezone
  7. Relaunched Outlook

Everything is good.

Thanks for Vendor’s debug mode and generous help when you need that 5th gear.

 

Parting Shot

Has I drove home last night, tuned in to 1100 AM KFAX.

Tuned into a Pastor that I was probably hearing for the first time.  His name is Pastor Greg Lundstedt.  And, he spoke on prayer.

As part of his discussion, he said :

Prayer without study is presumption
Preparing without prayer is atheism

I think I will like to same metaphorically about blogging and having a working relationship with Vendors.

Listening

Listening to

Julie Roberts – Men & Mascara
https://www.youtube.com/watch?v=2e-eoh7Pl6Q

References

 

 

Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s