NI TestStand

cancel
Showing results for 
Search instead for 
Did you mean: 

C%23 Codemodule Debuging TestStand2013

Solved!
Go to solution

Hi,

 

I have focused that debugging is not working when i am trying to debug "old" codemodules in TS 5.1 (2013) which where build with VS2010SP1 using

.Net Framework lower/equal 3.5

By switching to TS5.0   OR  setting .Net Framework to 4.0 debugging is working.

 

Is there a workaround that allows debugging without modifications ?

 

Regards

 

Juergen

 

 

--Signature--
Sessions NI-Week 2017 2016
Feedback or kudos are welcome
0 Kudos
Message 1 of 4
(4,214 Views)

Juergen,

 

You might be able to solve this by using an application configuration file. Here is a help file which describes this process: http://zone.ni.com/reference/en-XX/help/370052M-01/tsref/infotopics/net_clr/

 

I hope this helps, and let us know how it goes!

0 Kudos
Message 2 of 4
(4,208 Views)
Solution
Accepted by topic author j_dodek

All .NET code called by the .NET adapter in TestStand 2013 actually runs in the .NET 4.0 clr even if the assemblies were compiled as supporting .NET 3.5. So you should be able to debug your assemblies by setting the debugger to debug the .NET 4.0 clr. Newer versions of the .NET clr are generally highly backwards compatible with the old version. When a .NET 4.0 app loads a .NET 3.5 assembly that assembly is generally loaded into the .NET 4.0 clr so that it can be called from the .NET 4.0 code which the app is already running.

 

Hope this helps clarify things. To help you understand the difference between CLR version and framework version see the following:

 

a) .NET Frameworks 2.0, 3.0, and 3.5 all use the .NET 2.0 CLR. Assemblies compiled against these frameworks can generally also be loaded in the .NET 4.0 CLR (the one exception being C++/CLI assemblies which require an app config file setting to allow them to be loaded in the .NET 4.0 CLR).

 

b) .NET Frameworks 4.0, 4.5, and 4.5.1 all use the .NET 4.0 CLR.

 

c) There is only one of each CLR on a machine, so if you have .NET 3.5 installed on your machine you have a .NET 2.0 CLR installed which supports .NET 3.5. Similarly if you have .NET 4.5.1 installed on your machine, you have a .NET 4.0 CLR which supports 4.5.1. So basically .NET Framework 4.5.1 installs over and replaces .NET Framework 4.0.

 

I know it's a bit confusing. Let me know if you have any questions.

-Doug

Message 3 of 4
(4,202 Views)

Hi Doug,

Thanks for clarifying.

 

Reagrds

 

Juergen

--Signature--
Sessions NI-Week 2017 2016
Feedback or kudos are welcome
0 Kudos
Message 4 of 4
(4,150 Views)