-
Notifications
You must be signed in to change notification settings - Fork 26
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
"Could not load System.Runtime or one of its dependencies" #112
Comments
I tried using Fuslogvw without success; the log viewer was set to log binding errors. I tried the following steps:
After all this. there are four binding errors, none of which seem to be relevant. |
I tried to figure out which DLL is causing the problem, by disabling Costura so all DLLs are output to the visualizers folder, and renaming all the DLLs except the main visualizer so they couldn't be found. Then I tried to successively restore the correct name for each DLL. I was able to trace the error specifically to the Periscope DLL. My understanding of the problem is that .NET Framework uses one version of System.Runtime while .NET Core uses another. And we have an indirect reference to .NET Core: ExpressionTreeVisualizer.dll -> Periscope.dll -> Periscope.Debuggee.dll (which targets .NET Standard, ,NET Framework and .NET Core). But that isn't supported by what's happening -- Periscope.dll should load fine and an error should be raised after trying to load Periscope.Debuggee.dll. |
Updating the Periscope.Debuggee.dll library to target .NET Framework 4.7.2 (instead of .NET Framework 2.0) doesn't help. |
(Closed by mistake.) |
Periscope and Periscope.Debuggee are now submodules. We are no longer using Costura to create a single DLL. Instead, all the dependencies are in a subfolder of the primary DLL, and loaded by Periscope by listening to the AssemblyResolve event. Uninstalling will be a bit more painful -- delete all the files in the visualizer folder which start with |
Describe the bug
When trying to open the visualizer from the visualizer dropdown, VS presents the following error:
To Reproduce
Steps to reproduce the behavior:
Expression
-- either in a tooltip from the main editor window, or from the Locals, Autos, or Watch panes.Expected behavior
The visualizer should load.
Version info:
Note that the visualizer location and version can be found at the bottom of the Settings popup (click the gear icon).
Workarounds
Additional context
The issue only comes up if Costura is used to compile everything into a single file. It's important to use Costura, because that means only a single DLL is copied/pasted; otherwise all the dependent DLLs need to be in the Visualizers subfolder, and also in each framework-specific subfolder. The chances of broken dependencies increase exponentially.
Taking Costura off of the debugger-side DLL doesn't appear to help.
Previous instances: #110 #103
(NB This issue should not be closed until we've verified that it's been resolved completely.)
The text was updated successfully, but these errors were encountered: