How do I resolve "An error occurred in the Microsoft .NET Framework..." exception received starting Acctivate on Windows Server 2008

A startup error may occur on older versions of Windows Server 2008 and Windows 7 due to newer Windows Updates

Recent Windows Updates for Microsoft .NET Framework 4.8 may break the interaction between Microsoft SQL Server and an assembly that's utilized by Acctivate.  After the Windows Update is installed, and Windows is rebooted, user will be unable to log into Acctivate and will receive the following message:

An error occurred in the Microsoft .NET Framework while trying to load assembly id 65537. The server may be running out of resources, or the assembly may not be trusted with PERMISSION_SET = EXTERNAL_ACCESS or UNSAFE. Run the query again, or check documentation to see how to solve the assembly trust issues. For more information about this error:
System.IO.FileLoadException: Could not load file or assembly 'acctivatesqlfunctions, Version=1.0.0.0, Culture=neutral, PublicKeyToken=9593ee14abe3e495' or one of its dependencies. An error relating to security occurred. (Exception from HRESULT: 0x8013150A)
System.IO.FileLoadException:
  at System.Reflection.Assembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, Assembly locationHint, StackCrawlMark& stackMark, Boolean throwOnFileNotFound, Boolean forIntrospection)
  at System.Reflection.Assembly.nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, Assembly locationHint, StackCrawlMark& stackMark, Boolean throwOnFileNotFound, Boolean forIntrospection)
  at System.Reflection.Assembly.InternalLoad(AssemblyName assemblyRef, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection)
  at System.Reflection.Assembly.InternalLoad(String assemblyString, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection)
  at System.Reflection.Assembly.Load(String assemblyString)

To resolve this error message received at login, verify a recent Windows Update on the server has been installed.  We believe this Security and Quality Rollup for Microsoft .NET Framework Update is the root of the issue:

 

Security and Quality Rollup for .NET Framework 3.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8 for Windows 7 SP1 and Windows Server 2008 R2 SP1 (KB4535102)

 

To resolve or work around this issue, you have a few options.

  1. Uninstall this Windows Update.  Acctivate should be able to properly interact with SQL at startup after the uninstall takes place.
  2. Consider upgrading your Windows operating system.  Windows Server 2008 R2 is becoming pretty old and there are now a multitude of reasons for companies to consider upgrading their servers.
  3. Consider migrating Acctivate to a different/newer server altogether.  This may be the best longterm solution.  While we do understand this solution may be time sensitive, newer, more updated servers are ideal for running Microsoft SQL Server editions and Acctivate.