Keepass crashes and fails to synchronize with UE-V

Article ID: 2802058 - View products that this article applies to.
Expand all | Collapse all

Symptoms

Keepass.exe fails to synchronize settings with Microsoft User Experience Virtualization 1.0 (UE-V 1.0) enabled and crashes on launch.  An error similar to the following will be reported in the Application log:

Log Name:      Application
Source:        Application Error
Event ID:      1000
Task Category: Application Crashing Events
Level:         Error
Keywords:      Classic
Description:
Faulting application name: KeePass.exe, version: 2.20.1.0, time stamp: 0x506d455e
Faulting module name: KERNELBASE.dll, version: 6.1.7601.18015, time stamp: 0x50b8479b
Exception code: 0xe0434352
Fault offset: 0x0000000000009e5d
Faulting process id: 0x544
Faulting application start time: 0x01cdef9d0028ee0a
Faulting application path: C:\Program Files (x86)\KeePass2x\KeePass.exe
Faulting module path: C:\WINDOWS\system32\KERNELBASE.dll
Report Id: 3dff0aaa-5b90-11e2-bb4e-005056c00008
Faulting package full name: %14
Faulting package-relative application ID: %15

A UEV debug (ETL) trace will show a pattern similar to the following:

03:43:05.689 01-10-2013 11 1348 10232 16 2013-Jan-10 20:43:05.689 - Orchestrator: [10232]: INFO: An updated settings data package was not found to import for settings location template KeePass.
 
...
 
03:43:05.689 01-10-2013 2 1348 5540 16 2013-Jan-10 20:43:05.690 - AppAgent: [5540]: SCOPE: <-- SyncSettingsFromCentralStoreToLocalStore() [Settings successfully imported]
 
03:43:05.689 01-10-2013 2 1348 5540 16 2013-Jan-10 20:43:05.690 - AppAgent: [5540]: INFO: Calling monitored application's main entry point.
 
03:43:05.767 01-10-2013 102 4636 10872 0 The Agent Driver trapped the start of process WerFault.exe (ID 9752).

Cause

This crash occurs because UE-V and Keepass.exe both attempt to load different versions of the .Net runtime into the same process space when the UE-V agent DLL is injected in to the Keepass.exe process.

Resolution

To resolve this issue, complete the following steps:

1. Open Notepad.exe in an elevated context by right-clicking on a shortcut to Notepad and choosing Run as administrator....

2. Select File\New... and create or edit a file named keepass.exe.config in the same folder as Keepass.exe (C:\Program Files (x86)\KeePass Password Safe 2 by default). Make sure to remove the .txt extension.

3. Copy and paste the following lines in to keepass.exe.config.  If the file exists, change the <startup> tag to <startup useLegacyV2RuntimeActivationPolicy="true">

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
 <startup useLegacyV2RuntimeActivationPolicy="true">
  <supportedRuntime version="v4.0" />
  <supportedRuntime version="v2.0.50727" />
 </startup>
 <runtime>
  <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
   <dependentAssembly>
    <assemblyIdentity name="KeePass"
     publicKeyToken="fed2ed7716aecf5c"
     culture="neutral" />
    <bindingRedirect oldVersion="2.0.9.0-2.20.0.0"
     newVersion="2.20.0.18622" />
   </dependentAssembly>
  </assemblyBinding>
  <enforceFIPSPolicy enabled="false" />
  <loadFromRemoteSources enabled="true" />
 </runtime>
</configuration>

4. Save the file and exit Notepad.

5. Re-launch Keepass.exe.

Note This is a "FAST PUBLISH" article created directly from within the Microsoft support organization. The information contained herein is provided as-is in response to emerging issues. As a result of the speed in making it available, the materials may include typographical errors and may be revised at any time without notice. See Terms of Use for other considerations.

Properties

Article ID: 2802058 - Last Review: January 22, 2013 - Revision: 2.0
Applies to
  • Microsoft User Experience Virtualization
Keywords: 
KB2802058

Give Feedback

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com