xsharp.eu • Could not load file or assembly 'VulcanRTFuncs, Version=3.0.301.0
Page 1 of 1

Could not load file or assembly 'VulcanRTFuncs, Version=3.0.301.0

Posted: Wed Oct 11, 2017 10:46 am
by ic2
This is the situation. I picked up the solution my new employee is working on. The solution contains 2 X# libraries and 1 C# library. On debugging he found that setting a breakpoint in C# code within the same solution, the debugger does not stop at the C# code, only at breakpoints within the X# code.

I added a new WPF application to the solution with a button on a screen from where I start testing the X# method calling the C# method to see how debugging works. Or doesn't work.

First the compiler complains about incorrect versions of the Vulcan library. I decide to remove all references to the Vulcan DLL's and reapply them, browsing to C:Program Files (x86)Vulcan.NET 3.0RedistAssembliesv4.0. Compiler seems happy but when I start my test program:
local oObj as XSharpNameSpace.XSharpClass
oObj:= XSharpNameSpace.XSharpClass{}
oobj:MyMethodToTest("test") // Method found in XSharpNameSpace, XSharpClass

I get a runtime error, showing app:Run() from the app.g.prg, something mysterious VS seems to use or need:

Could not load file or assembly 'VulcanRTFuncs, Version=3.0.301.0, Culture=neutral, PublicKeyToken=0e73a8bf006af00c' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)

What do I do wrong?

Dick

Could not load file or assembly 'VulcanRTFuncs, Version=3.0.301.0

Posted: Wed Oct 11, 2017 12:09 pm
by Chris
Hi Dick,

Just copy the VulcanRT.dll and VulcanRTFuncs.dll files (and any other if you are using them) to the same folder with the .exe. Does it work ok now?

Chris

Could not load file or assembly 'VulcanRTFuncs, Version=3.0.301.0

Posted: Wed Oct 11, 2017 9:32 pm
by ic2
Hello Chris,

No, both files are there and these are the same as the ones from the Vulcan Redist directory.

Do you maybe have another suggestion?

Dick

Could not load file or assembly 'VulcanRTFuncs, Version=3.0.301.0

Posted: Wed Oct 11, 2017 10:07 pm
by robert
Dick,

Open your assembly with ILSpy or Reflector and check for the exact signature for the references.
Then open the files you have included and make sure that the signatures match.
I am sure that upon close inspection you will find a difference.
If you can't, then mail me the files and I will have a look.

One way to get the complete details of what .Net is looking for and where it searches is by enabling what is called "Fusion Logging".
There is an article here that describes how to do that:
https://stackoverflow.com/questions/255 ... ion-in-net


Robert

Could not load file or assembly 'VulcanRTFuncs, Version=3.0.301.0

Posted: Wed Oct 11, 2017 10:17 pm
by ic2
Hello Robert, Chris,

After a closer look I found something which I thought couldn't be right and after deleting it, it worked - and the debugging went well from X# to C# code!

When I rushed back to modify my post I saw you already replied (incredible!), and with the correct reply of course.

Somehow or for some reasons I have added 2 Vulcan libraries to my project like I did with programs and pictures. It seemed to work for the library, until I tried to run a WPF program from the same solution. These libraries were Vulcan 4 libs while my references were Vulcan 3. I just overlooked that because I was so busy inspecting all references. There are many ways possible to get VS to not work...

I add a picture of the relevant part of my solution tree from just before removing the Vulcan DLL's.

One small question: is there any advantage in using Vulcan 4 libs?

Dick
VulcanIncluded.JPG
VulcanIncluded.JPG (25.59 KiB) Viewed 613 times

Could not load file or assembly 'VulcanRTFuncs, Version=3.0.301.0

Posted: Thu Oct 12, 2017 6:49 am
by Chris
Hi Dick,

No, I think there's no particular reason to prefer the vulcan 303 dlls to the 401 ones, or the other way around. I don't think I had made any changes to the runtime of vulcan for the 4.0 version, so those 2 versions should be identical.

Chris

Could not load file or assembly 'VulcanRTFuncs, Version=3.0.301.0

Posted: Thu Oct 12, 2017 10:30 am
by ic2
Thanks Chris; I will then keep using the Vulcan 3 libs to be sure.

I guess the only thing changed in Vulcan 4 is that it worked in VS 2015.

Dick

Could not load file or assembly 'VulcanRTFuncs, Version=3.0.301.0

Posted: Thu Oct 12, 2017 3:39 pm
by Chris
Yes, I think only Fabrice's work was included in Vulcan4, integration of VS2015. And some of Nikos, I think he had added preliminary support for lambda expressions/anonymous functions in the compiler. Nothing contributed by Robert either, he had left the team long ago :-)

Chris