06-17-2011 05:08 PM
Hello,
We just ported our application to VS.2010 + Measurement
Studio 2010 (.NET 4.0).
During testing our final installation, we discovered that
some NI controls, like LEDs, knobs, etc. are not drawn in Windows XP (32 and 64
bits) operating system if .NET Framework 3.5 is not installed. It is very
strange, because our application uses all NI DLLs with the 40 version. On
Windows 7 (32 and 64 bits) there is no such problem (probably because .NET 3.5
is a part of windows installation).
Any help will be greatly appriciated.
Thank you.
06-19-2011 04:59 AM
Here is more info about the original problem:
Our projects has the following references:
- NationalInstruments.UI
- NationalInstruments.UI.WindowsForms
- NationalInstruments.Common
- NationalInstruments.Analysis.Professional
When we add project output to installer, the following dependencies are added:
- mkl
- MStudioCommon.2010
- MStudioProfessionalAnalysis.2010
- MStudioUI.2010
- MStudioUIDesign.2010
- MStudioUIWinforms.2010
- nianlys
- NIMesaDLL
- niMetaUtils
We are not using NI drivers.
An examples of objects we are using:
- NationalInstruments.Analysis.Dsp
- NationalInstruments.UI.WindowsForms.Knob
- NationalInstruments.UI.Range
- NationalInstruments.UI.PointStyle
- NationalInstruments.UI.WindowsForms.PropertyEditor
- NationalInstruments.UI.LineStyle
- NationalInstruments.UI.XYCursor
- NationalInstruments.UI.WindowsForms.Led
- NationalInstruments.UI.YAxis
- NationalInstruments.UI.ScatterPlot
- NationalInstruments.UI.WindowsForms.ScatterGraph
- NationalInstruments.UI.LedStyle
06-20-2011 02:19 PM
Hi Oleg R,.
Would it be possible to provide the versions or the dependencies/references? My guess is that one of them may be using .NET 3.5.
06-21-2011 01:24 AM
Hello,
All reference are of version 4.0 -
NationalInstruments.Analysis.Professional - v.9.0.40.292
NationalInstruments.Common - v.9.0.40.362
NationalInstruments.UI - v.9.0.40.292
NationalInstruments.UI.WindowsForms - v.9.0.40.292
The msm files we are using in installer are:
mlk.msm - v.10.0.0
MStudioCommon.2010.msm - v.9.0.0.362
MStudioProfessionalAnalysis.2010.msm - v.9.0.0.292
MStudioUI.2010.msm - v.9.0.0.292
MStudioUIDesign.2010.msm - v.9.0.0.292
MStudioUIWinforms.2010.msm - v.9.0.0.292
nianlys.msm - v.10.0.0.360
NIMesaDLL.msm - v.10.0.0
niMetaUtils.msm - v.2.8
Please advise.
06-22-2011 01:01 PM
Hi Oleg,
I am currently trying to reproduce this issue on my end and will get back to you as soon as I have any updates.
06-23-2011 09:10 AM
Hi Oleg,
I was able to reproduce the issue on my end and found out that the behavior you are seeing is due to the fact that one of the underlying dependencies, mesa.dll (which is used to draw those controls) is reliant upon the Visual C++ Run-time version 9.0, which happens to be a component of .NET 3.5. In order to get around this, you can simply add the Microsoft_VC90_CRT_x86.msm and Microsoft_VC90_MFC_x86.msm merge modules to your set-up project, which will allow you to use the Visual C++ Run-time in your deployment without actually installing the .NET 3.5 framework.
06-25-2011 07:03 AM
Hi Hassan,
Thank you for the response.
What is case of windows XP 64 bits ?
What additional dependencies should we add ? The same just for x64 ?
Thank you,
Oleg.
06-27-2011 04:19 PM
Hi Oleg,
If the application you are deploying is a 64-bit application then you should use the x64 components.
06-29-2011 03:54 PM
HI Hassan,
The question was related to Microsoft_VC90_CRT_x86.msm and Microsoft_VC90_MFC_x86.msm merge modules. In case of 64-bit application is there a need to include Microsoft_VC90_CRT_x86.msm and Microsoft_VC90_MFC_x86.msm merge modules or Microsoft_VC90_CRT_x64_x86.msm and Microsoft_VC90_MFC_x64_x86.msm merge modules ?
THank you,
Oleg.
06-30-2011 11:23 AM
Hi Oleg,
If the the application is 64-bit you should use Microsoft_VC90_CRT_x64_x86.msm and Microsoft_VC90_MFC_x64_x86.msm merge modules.