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.0\Redist\Assemblies\v4.0. Compiler seems happy but when I start my test program:
local oObj as 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)
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.
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?
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.
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