Unexpected error "Object reference not set to an instance of an object" encountered when opening Access Manager
All versions of Centrify DirectManage Access Manager on all platforms
After installing or upgrading DirectManage Access Manager a popup message is received upon opening the application:
The message may read "Unexpected error" and the details may contain message similar as the one below:
Reason: System.NullReferenceException: Object reference not set to an instance of an object. at System.Data.SqlServerCe.SqlCeException.ToString() at System.Text.StringBuilder.AppendFormat(IFormatProvider provider, String format, Object args) at System.String.Format(IFormatProvider provider, String format, Object args) at Centrify.DirectControl.Util.Trace.UnexpectedError(Exception e) at Centrify.DirectControl.Util.MessageBox.ShowUnexpectedError(Exception e) at Centrify.DirectControl.MMC.MMCSnapin.InitDatabase() at Centrify.DirectControl.MMC.MMCSnapin.Preload(IntPtr hScopeItem) at Ironring.Management.MMC.SnapinBase.Notify(IDataObject lpDataObject, UInt32 aevent, IntPtr arg, IntPtr param)
One possible explanation for this error is the version of SQL Server Compact Edition installed on the machine.
First determine the exact version of SQL Server Compact that is installed before proceeding:
1. Open the "Programs & Features" section in control panel on the affected machine.
2. Observe the number of entries that start with "Microsoft SQL Server 3.5 Compact". There may be up to 3 items:
One ending in "ENU"
One ending in "Query Tools ENU"
One ending in "x64 ENU"
3. Next note the SP and numeric version
4. Finally go to the %windir%\assembly folder (e.g. C:\Windows\assembly). Look for the assembly file "System.Data.SqlServerCe" with version 126.96.36.199 (not 188.8.131.52). Right click and open the property pages, record the product version. It should be either 3.5.8080 or 3.5.5692.
5. If the server is running running 3.5.5692 (SP1) or running a mix of 32 and 64 bit versions this may be the issue. This is a known issue as noted in the Microsoft article below and installing the SP2 version should help:
For reference "SQL Server Compact" is a non-instanced version of SQL. Access Manager uses it for certain features which require a staging area prior to import such as like sudo or NIS map import.
6. If after reviewing the steps above no SQL Server Compact Edition is installed on the system, Customer will still need to install SQL Server Compact 3.5 SP2 for both platforms for the reasons described in the above MS article.
Centrify Corporation does not take any responsibility for the content or availability of this link and it was provided as a courtesy. Customers should contact the vendor if there are any further questions