Definition of setting Framework
For example the file
%ProgramFiles(x86)%\IDM Computer Solutions\UEStudio\configs\Visual Studio 2010\Visual C# compiler\Windows Application
opened by clicking on
- item Project Settings in menu Project, selecting tab Settings, clicking on button Set/Change Compiler, clicking on Visual Studio 2010 (or 2012 when already copied), Visual C# compiler, Windows Application and finally on button Edit Configuration,
or
- item Select Compiler in menu Build, clicking on Visual Studio 2010 (or 2012 when already copied), Visual C# compiler, Windows Application and finally on button Edit Configuration
contains
[Settings]
Framework = 4.0.30319|3.5|3.0|1.0.3705|1.1.4322
The character
| is a separator for the possible values for compiler setting
Framework.
After opening
Set Compiler Options in menu
Build, there is at top by default
Framework =
4.0.30319
Double clicking on this line in the compiler options dialog opens another dialog showing the other values in a list from which one value can be selected.
Visual Studio 2012 works usually with framework
4.5 and therefore in a configuration file for VS2012 the
Framework settings line should be
Framework =
4.5|4.0.30319|3.5|3.0|1.0.3705|1.1.4322
So specifying twice the same value as forum member amicidavinci has done with
4.0.30319|4.0.30319 does not make much sense.
Usage of setting Framework
Next in the file there is
[Variables]
CPATH = $(HKEY_LOCAL_MACHINE\SOFTWARE
$6432\Microsoft\.NETFramework\InstallRoot)v
$(Framework)
So a variable
compiler
path (short: CPATH) is defined taking the default string value from a Windows registry key. The name of the registry key contains here 2 variables:
$6432 is replaced by either nothing (32-bit Windows) or by
\Wow6432Node (64-bit Windows).
$(Framework) is replaced by the value currently selected in the compiler settings for
Framework.
If you start
RegEdit, browse to registry key which is for example
HKEY_LOCAL_MACHINE\SOFTWARE
\Wow6432Node\Microsoft\.NETFramework\InstallRootv
4.0.30319
and look on right side, you should see at top the path to the root of the compiler which UEStudio reads on creation of the makefile for the project.
The setting
Framework is not used further and therefore we need to look where variable
CPATH is used in the configuration file.
Usage of variable CPATH
As we know now, UEStudio reads from a registry key the root path of the compiler according to compiler setting
Framework and assigns it to a variable
CPATH.
This variable is used in
[Environment]
PATH = $(CPATH);$(MSSDKDir)bin;%PATH%
It is quite easy to see what is done here. An environment variable named
PATH is defined for compile/build process which consists of
- the root path of the compiler directory
- the root path of the Microsoft SDK directory
which is defined with same procedure as the compiler path and therefore not extra explained
- the existing content of the environment variable PATH on compile/build as defined in the Windows environment settings.
Of course if you know into which directory the Microsoft .NET Framework is installed and you never want to use another framework version, you can modify the
PATH definition and use directly the right path.
The method of reading the compiler path from Windows registry according to framework version selected by the user of UEStudio is a little bit more complicated, but is also more flexible and should result in a working configuration independent into which directory the .NET framework is installed, the default path as defined by Microsoft or a different path as selected by the user during installation of Visual Studio.