03-27-2009 07:39 AM
03-30-2009 08:45 AM
Hi IsaFisa,
Its always best practice to deploy whatever versions of the assemblies you are building against to the end-user system. The easiest way to take care of this is to build some type of MSI setup project (i.e. if your using VS, then you can use the VS setup projects) that includes the appropriate DAQmx and Common assemblies. This setup project will contain all the needed .NET pieces. Then you must also make sure to install the correct underlying DAQmx driver. So if you are building against version 8.8, then its best to deploy all 8.8 assemblies and underlying components.
If you create a VS setup project and point it to the output of your Windows application, VS should automatically pull in all the needed .NET components.
What you are seeing is how .NET works in general. If you are building against version 8.8.xx.xxx, then you *must deploy that version on the target system in a location that the .NET CLR will look. If you don't, then the CLR won't be able to locate that assembly and your application won't work.
* You can of course always get around this by using config files or policy files to redirect a version to some other version.
I would suggest reading through our Deploying Applications help topics. In particular, take a look at Deploying Windows Applications, .NET Merge Modules, and .NET Class Library Versioning for Development and Deployment.
Best Regards,