microsoft / PowerToys

Windows system utilities to maximize productivity
MIT License
111.33k stars 6.55k forks source link

Could not load file or assembly Wox.Plugin #6298

Closed OddSquirrel closed 4 years ago

OddSquirrel commented 4 years ago

ℹ Computer information

📝 Provide detailed reproduction steps (if any)

  1. Install PowerToysSetup-0.21.1-x64.exe or PowerToysSetup-0.22.0-x64.exe with or without prior version installed

✔️ Expected result

Installation should finish without error.

❌ Actual result

Window "PowerToys Run into an issue" opens:

Version: 0.21.1.0
OS Version: Microsoft Windows NT 10.0.19041.0
IntPtr Length: 8
x64: True
Date: 09/02/2020 22:39:22
Exception:
System.Reflection.ReflectionTypeLoadException: Unable to load one or more of the requested types.
Could not load file or assembly 'Wox.Plugin, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'. Das System kann die angegebene Datei nicht finden.
   at System.Reflection.RuntimeModule.GetTypes(RuntimeModule module)
   at System.Reflection.RuntimeModule.GetTypes()
   at System.Reflection.Assembly.GetTypes()
   at Wox.Core.Plugin.PluginsLoader.<>c__DisplayClass2_1.<CSharpPlugins>b__1()
   at Wox.Infrastructure.Stopwatch.Debug(String message, Action action)
   at Wox.Core.Plugin.PluginsLoader.CSharpPlugins(List`1 source)
   at Wox.Core.Plugin.PluginsLoader.Plugins(List`1 metadatas, PluginSettings settings)
   at Wox.Core.Plugin.PluginManager.LoadPlugins(PluginSettings settings)
   at PowerLauncher.App.<>c__DisplayClass16_0.<OnStartup>b__1()
   at Wox.Infrastructure.Stopwatch.Normal(String message, Action action)
   at PowerLauncher.App.OnStartup(Object sender, StartupEventArgs e)
   at System.Windows.Application.OnStartup(StartupEventArgs e)
   at System.Windows.Application.<.ctor>b__1_0(Object unused)
   at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
System.IO.FileNotFoundException: Could not load file or assembly 'Wox.Plugin, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'. Das System kann die angegebene Datei nicht finden.
File name: 'Wox.Plugin, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'

📷 Screenshots

image

📜 Log

2020-09-02.txt

dsrivastavv commented 4 years ago

@OddSquirrel Could you please try the following steps and see if this fix your issue :

  1. Uninstall PowerToys.
  2. Ensure that C:\Program Files\PowerToys folder is deleted. If not, manually delete it.
  3. Install Powertoys Version=0.21.1

Please follow the below steps in case this still doesn't fix your issue :

  1. Upload log files located at %userprofile%/appdata/local/microsoft/powertoys/powertoys run/logs
  2. Upload PowerLauncher.deps.json located at C:\Program Files\PowerToys\modules\launcher.
  3. Check if wox.dll is present in C:\Program Files\PowerToys\modules
stlorenz commented 4 years ago

Removing the folder C:\Program Files\PowerToys manually fixed the problem for me.

dsrivastavv commented 4 years ago

@enricogior This issue is happening because powerlauncher is trying to load older version(1.0.0.0) of the dll. Starting Powertoys version=0.19.0, these dll's are supposed to have same version as powertoys. Deleting installation folder at C:\Program Files\PowerToys and reinstalling powertoys seems to fix the issue. I haven't been able to repro this issue. Can you please help with this?

Similar issue has been reported in #6386 and #5471

enricogior commented 4 years ago

@somil55 we need to know what was the sequence of installations. When PowerToys is uninstalled, it's not supposed to have anything left behind. If something is left behind we should know which files were not deleted to have something to working on.

crutkas commented 4 years ago

isn't #5471 the same issue.

dsrivastavv commented 4 years ago

@crutkas #6386 and #5471 are both similar to this.

enricogior commented 4 years ago

@stlorenz when you first installed 0.21.1 did you manually install it using the .msi or the .exe, or what it an autoupdate?

stlorenz commented 4 years ago

I did a manual install via the msi. Autoupdate didn't seem to work for me.

enricogior commented 4 years ago

@stlorenz thanks, that might have been the problem, the .msi is not supposed to be used for updates, we provide it for IT specialists that have specific requirements to automatically install PowerToys.

@crutkas we should consider stop releasing the .msi as it is and figure out a way to release it so it won't be used by users.

stlorenz commented 4 years ago

@enricogior Yes, thats why I always use the MSI Variant because we distribute it then for all our machines.

enricogior commented 4 years ago

@stlorenz starting with 0.21.1 we added installation flags to the .exe to facilitate the transition from the .msi https://github.com/microsoft/PowerToys/tree/master/doc/devdocs#supported-arguments are those good enough for your installation scenario?

crutkas commented 4 years ago

@stlorenz would love to sync with you on how you feel we can still support the IT route but not cause confusion.

stlorenz commented 4 years ago

@enricogior @crutkas The silent flag in the .exe is fine for our scenario an we weill use this in the future instead of the .msi. Thx for pointing this out.

crutkas commented 4 years ago

duping against #5471