Проверка версии платформы .NET Framework - C#
Формулировка задачи:
Необходимо чтобы при запуске программы (обязательно C#) происходила проверки наличия установленного .NET Framework 3.5 и выше.
Пока есть два варианта решения проблемы:
1. Открывать программу .NET Framework 2.0 и если проходит проверка, то запускать на версии выше.
2. Писать в другой среде, которая может проверить наличие .NET Framework как такового и после чего уже запускать программу.
Хотелось бы услышать ваши мнения.
По первому пункту я не могу найти как поменять запускаемую платформу и как потом перейти на другую программу.
По второму - на чём писать и, опять таки, как запустить программу написанную в C#.
Решение задачи: «Проверка версии платформы .NET Framework»
textual
Листинг программы
/*
@echo off && cls && echo Loading... && echo.
set WinDirNet=%WinDir%\Microsoft.NET\Framework
if exist "%WinDirNet%\v2.0.50727\csc.exe" set csc="%WinDirNet%\v2.0.50727\csc.exe"
if exist "%WinDirNet%\v3.5\csc.exe" set csc="%WinDirNet%\v3.5\csc.exe"
if exist "%WinDirNet%\v4.0.30319\csc.exe" set csc="%WinDirNet%\v4.0.30319\csc.exe"
if "%csc%" == "" ( echo .NET Framework not found! && echo. && pause && exit )
%csc% /nologo /out:"%~dpnx0.exe" "%~dpnx0"
if not "%ERRORLEVEL%" == "0" ( echo. && pause && exit )
cls
"%~dpnx0.exe" %*
del "%~dpnx0.exe"
exit
*/
using System;
class HelloWorld
{
static void Main(string[] args)
{
Console.ForegroundColor = System.ConsoleColor.Cyan;
Console.Title = "Test application";
Console.WriteLine("Hello, World!\r\nI am at " + System.Environment.Version);
int i = 0;
foreach (string item in args)
{
Console.WriteLine(i+": "+item);
i++;
}
Console.ReadKey(true);
}
}