walterpg / google-drive-sync

A KeePass Password Safe v2 plugin for synchronizing passwords to Google Drive files.
GNU General Public License v3.0
198 stars 10 forks source link

4.0.7 beta references older KeePass? #41

Closed Tsaukpaetra closed 3 years ago

Tsaukpaetra commented 3 years ago

Describe the bug Latest version appears to be hard referencing version 2.48.0.37990?

To Reproduce Steps to reproduce the behavior:

  1. Latest KeePass (2.48.1) in portable mode
  2. KPSyncForDrive-4.0.7-beta.zip
  3. Could not load dependency.

Expected behavior A clear and concise description of what you expected to happen.

Screenshots [Window Title] KeePass

[Content]
The following plugin is incompatible with the current KeePass version:
D:\KP\Plugins\KPSyncForDrive\KPSyncForDrive.dll

Have a look at the plugin's website for an appropriate version.

[Expanded Information]
Could not load file or assembly 'KeePass, Version=2.48.0.37990, Culture=neutral, PublicKeyToken=7952fc8ece49a093' or one of its dependencies. The system cannot find the file specified.
mscorlib
   at System.Reflection.RuntimeAssembly.GetType(RuntimeAssembly assembly, String name, Boolean throwOnError, Boolean ignoreCase, ObjectHandleOnStack type)
   at System.Reflection.RuntimeAssembly.GetType(String name, Boolean throwOnError, Boolean ignoreCase)
   at System.Activator.CreateInstanceFromInternal(String assemblyFile, String typeName, Boolean ignoreCase, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes, Evidence securityInfo)
   at KeePass.Plugins.PluginManager.CreatePluginInstance(String strFilePath, String strTypeName)
   at KeePass.Plugins.PluginManager.LoadPlugins(List`1 lFiles, String strTypeName, String strDisplayFilePath, Boolean bSkipCacheFiles)
Void GetType(System.Reflection.RuntimeAssembly, System.String, Boolean, Boolean, System.Runtime.CompilerServices.ObjectHandleOnStack)

[^] Details  [OK]

Please provide the following information:

Additional context Hopefully easily fixed by widening the library matching, not sure how that's done.

neil-bh commented 3 years ago

The KPSyncForDrive.dll library has the following: KeePass Version=2.48.0.37990 Culture=neutral PublicKeyToken=7952fc8ece49a093

However, the KeePass 2.48.1 binary / .exe.config uses: KeePass Version=2.48.1.16933 Culture=neutral PublicKeyToken=fed2ed7716aecf5c

This mismatch would likely explain the misloaded plugin issue.

Hopefully it's easily fixed.

BenJ-Wisco commented 3 years ago

I am receiving the same message on KeePass 2.48.1 Portable and 4.0.7 Beta.

walterpg commented 3 years ago

New binaries have been posted.

Thank you @neil-bh for linking the misloaded plugin topic. It is essential when upgrading KeePass/portable to always copy or merge the new KeePass.exe.config contained in the zip file into the same installation directory as KeePass.exe. Doing so will not cause you to lose KeePass settings (settings are in the KeePass.config.xml file).