|
Программирование >> Автоматически обновляемые приложения
/ ИсходниииХлапная - С#. Народные- советы http: netsources.nerod.ru/ . , Р \Ж 4$Исксяники.Главная 11 * Q ,> ОЕРницаСервис ▼ Статьи Змачй Купить CD Гй. Гпавная Призеры Button PictureBox 3 программирует на С# и Visual Basic .NET примеры mm вмйоп Для тех, кто ©Шутки ли Книги £рравочники роследнив ооступления SMS Office -нсы;.р. О Мобильные 33 .. устройства if 0 интернет Рис. 9.4. Internet Explorer с измененной строкой загоповка Листинг 9.28. Работа с реестром using Microsoft.Win32; private void buttonl Click(object sender, EventArgs e) { RegistryKey newIETitle = Registry.CurrentUser.OpenSubKey( @ SOFTWARE\Microsoft\Internet Explorer\Main , true); newIETitle.SetValue( Window Title , C#. Народные советы ); newIETitle.Close() ; MessageBox.Show( Закройте IE и запустите его снова ); Запустив снова браузер Internet Explorer, вы увидите, что в заголовке окна теперь отображается установленная нами строка (рис. 9.4). На сайте http: winchanger.whatis.ru/ вы можете найти Справочник по реестру, в котором собрано несколько сотен описаний настроек реестра. Вооружившись этим справочником, вы можете продолжить опыты с реестром. I Листинг 9.29. Определение архитектуры операционной системы private string GetProcessorArchitecture() { RegistryKey environmentKey = Registry.LocalMachine; раздел HKLM environmentKey = environmentKey.OpenSubKey( @ System\CurrentControlSet\Control\Session Manager\Environment , false); string strEnvironment = environmentKey.GetValue( PROCESSOR ARCHITECTURE ).ToString(); return StrEnvironment; private void butDetectBitVersion Click(object sender, EventArgs e) { MessageBox.Show(GetProcessorArchitecture()); Добавление программы в автозагрузку Напишем программу, которая будет добавлять себя в автозапуск Windows с помощью реестра. Чтобы программа запускалась при загрузке Windows, необходимо создать ключ реестра в ветке hkey local machine/software/ Microsoft/windows/CurrentVersion/Run. Названием ключа будет имя наше? программы, а значением - путь к исполняемому файлу программы. Определение архитектуры операционной системы с помощью реестра, например, можно определить, является ли операционная система 32-битной или 64-битной. В будущем Microsoft обещает, что все операционные системы будут только 64-битными. А пока мы находимся в переходном периоде, когда существуют разные архитектуры операционных систем - стандартная 32-битная и более прогрессивная 64-битная, имеющая некоторые дополнительные возможности. Если программист собирается использовать дополнительные возможности 64-битной архитектуры, то он сначала должен определить версию используемой системы. Это можно сделать с помощью реестра, прочитав нужное значение параметра, как показано в листинге 9.29. Впервые я натолкнулся на этот способ на блоге dirtyDogStini<: (http: dirtydogstink.coin/blog/default.aspx). i Листинг 9.30. Добавление программы в автозагрузку private void buttonl Click(object sender, EventArgs e) { RegistryKey myKey = Registry.LocalMachine.OpenSubKey( @ SOFTWARE\Microsoft\Windows\CurrentVersion\Run , true); myKey.SetValue( MyProgram , Application.ExecutablePath); Проверим работу кнопки. Нажмем на кнопку Добавить, после чего запустим редактор реестра regedit.exe, доберемся до ветки Run и проверим, создан ли ключ. Если он создан, то мы можем перезагружать компьютер, и наша программа запустится при загрузке Windows. Следует отметить, что первый параметр функции SetValue - ЭТО название ключа, которое в данном случае не играет большой роли. А вот второй параметр - значение, которое должно быть установлено равным пути к исполняемому файлу нашей программы. Для удаления ключа в обработчике нажатия кнопки напишем несложный код, приведенный в листинге 9.31. \ Листинг 9.31. Удаление программы из автозагрузки private void button2 Click(object sender, EventArgs e) { RegistryKey myKey = Registry.LocalMachine.OpenSubKey( (a SOFTWARE\Microsoft\Windows\CurrentVersion\Run , true); myKey.DeleteValue( MyProgram ); Стоит отметить, что в качестве параметра метода DeieteVaiue мы указываем наименование ключа, который нужно удалить из текущей ветки реестра, то есть то наименование, которое мы записали в реестр. Снова запускаем regedit.exe и проверяем, что ключ удалился. Вот такие несложные строки кода позволяют программистам добавлять свои программы в автозапуск. Как уже писалось выше, в С# за работу с реестром отвечает класс Microsoft. Win32. Registry, а за работу С ключами - класс Microsoft.Win32.RegistryKey. Расположим на форме две КНОПКИ! Добавить (будет создавать ключ в реестре) и Удалить (удаляет ключ). В обработчике для кнопки Добавить напишем код, приведенный в листинге 9.30.
|
© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки. |