|
Программирование >> Автоматически обновляемые приложения
private static int GetNetfxllSPLevel() { int regValue = 0; Мы можем получить -1, только если .NET Framework не установлена или произошла какая-то ошибка при извлечении данных из реестра int servicePackLevel = -1; if (GetRegistryValue(RegistryHive.LocalMachine, NetfxlIRegKeyName, NetfxllPlusSPxRegValueName, RegistryValueKind.DWord, out regValue)) servicePackLevel = regValue; return servicePackLevel; private static int GetNetfx20SPLevel() { int regValue = 0; Мы можем получить -1, только если .NET Framework не установлена или произошла какая-то ошибка при извлечении данных из реестра int servicePackLevel = -1; if (GetRegistryValue(RegistryHive.LocalMachine, Net fx2 ORegKeyName, Net fxl1Plus SPxRegValueName, RegistryValueKind.DWord, out regValue)) case FrameworkVersion.Fx2О: servicePackLevel = GetNetfx20SPLevel(); break; default: break; return servicePackLevel; Примечание Пример находится в папке NetFrameworkVersions на прилагаемом диске. Определение папки установки .NET Framework Иногда требуется узнать, где находится папка установки .NET Framework. В этом случае вам поможет функция GetcoRSystemDirectory, которая позволяет получить каталог установки той версии библиотеки Common Language Runtime (CLR), которая загружена в текущий процесс. Если CLR не загружена, то функция возвращает каталог, куда установлена самая последняя версия (листинг 9.19). Лиотинг 9;19, Получение имени itariKn, в которой уотанош1ена .NET F-aipework using System; using System.Runtime.InteropServices; class MainClass { [Dlllmport( mscoree.dll )] private static extern void GetCORSystemDirectory ( [MarshalAs(UnmanagedType.LPTStr)] System.Text.StringBuilder Buffer, int BufferLength, ref int Length); [STAThread] static void Main() { System.Text.StringBuilder sb = new System.Text.StringBuilder(260) ; int size = 0; ServicePackLevel = regValue; return ServicePackLevel; Примечание Пример находится в папке FrameworkFolder на прилагаемом диске. Номер сборки Каждая сборка имеет номер версии, состоящий из четырех частей, которые определены как атрибуты сборки (assembly attribute) в исходном коде проекта. Например, для стандартного проекта Visual С# 2008 эти атрибуты хранятся в файле Assemblylnfo.cs. Если вы откроете этот файл, то найдете там строку, определяющюю номер версии сборки: <Asserably: AsserablyVersion ( 1. О . О . О ) > Вы можете изменить номер версии самостоятельно в этом файле. Также вы можете установить номер версии другим способом. Выберите в меню команды Project I <ИмяПроекта> Properties, чтобы открыть окно настроек. Выберите в нем вкладку Application и щелкните на кнопке Assembly Information.... Установите нужный номер версии в текстовых полях, помеченных как Assembly Version. Обновление номера версии сборки в автоматическом режиме Если вы часто обновляете свой проект, то изменение номера версии сборки вручную вам очень быстро надоест. Вы можете переложить эту работу на Visual Studio 2005. Для этого в файле AssemblyInfo.cs используйте звездочку (*) для нужного компонента, определяющего номер версии. <Asserably: AsserablyVersion ( 1. 2. ) > <Asserably: AsserablyVersion( 1.2.3.* )> GetCORSystemDirectory(sb, sb.Capacity, ref size); Выводим на экран что-то типа C:\WINDOWS\Microsoft .NET\Framework\v2.О.50727\ Console . WriteLine (sb) ; Console.ReadLine();
|
© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки. |