|
Программирование >> Автоматически обновляемые приложения
После того как мы сформировали команду для отправки письма, можно его отправлять через почтовый клиент, установленный у пользователя по умолчанию. Когда вы запустите проект и нажмете на кнопку Послать письмо, то у вас откроется ваш почтовый клиент, в котором уже сформировано письмо. Примером такого клиента могут быть такие программы, как Outlook, Outlook Express, The Bat!, Eudora и др. После этого остается подправить текст, сформированный программно, и отправить письмо средствами установленного у вас по умолчанию клиента (листинг 9.15). ; Листинг 9.15. Отправка письма через почтовый клиент, установленный I по умолчанию using System.Diagnostics.Process; Process process = new Process(); process.Startlnfo.FileName = mailto:email@addressl.com, email@address2.com?subject=Hello &cc=email@address3.com&bcc=email@address4.com&body=Happy New Year ; process.Start(); Примечание Примеры находятся в папке ProcessesSamples на прилагаемом диске. Определение операционной системы пользователя Для определения операционной системы нужно использовать свойство OSVersion КЛаССа Environment ИЗ пространства имен System. СВОЙСТВО ; Листинг Определение операционной системы пользователя OperatingSystem os = Environment.OSVersion; listBoxl.Items.Add(OS.Version) ; listBoxl.Items.Add(os.Platform); listBoxl.Items.Add(os.ServicePack) ; listBoxl.Items.Add(os.Versionstring); Особое внимание нужно обратить тем программистам, которые писали программы специально для Windows ХР. После выхода этой операционной системы многие разработчики в своих проектах делали проверку на наличие этой системы у пользователя, чтобы задействовать предоставляемые ей новые возможности. Проверка могла осуществляться такой строчкой: if ((os.Version.Major == 5) && (os.Version.Minor == 1)) и так далее В данном примере проверяется наличие операционной системы Windows ХР. Если вы запустите проект с подобной проверкой под Windows Vista, то программа будет считать, что Windows Vista не входит в число поддерживаемых операционных систем. Поэтому вам нужно переделать эту проверку, как показано в листинге 9.17. Листинг 9.17. Исправленная версия проверки операционной системы private void CheckOSVersion() { OperatingSystem os = Environment.OSVersion; Version version = os.Version; if ((version.Major == 5) && (version.Minor == 1) I I version.Major >= 6) Version имеет поля Major и Minor, которые содержат дополнительную информацию. Операционная система Windows ХР имеет версию 5.1 и сборку 2600, а новая Windows Vista имеет версию 6.0 и сборку 6600. В статье How То Determine the Operating System Service Pack Level in Visual C# .NET (http: support.microsoft.com/kb/304721/EN-US/) приводится пример получения номера сервис-пака с помощью функции Windows API GetVersionEx. Данный пример был предназначен для использования в .NET Framework 1.1, но с появлением .NET Framework 2.0 надобность в использовании неуправляемого кода отпала. В составе новой платформы .NET Framework 2.0 появились такие новые свойства, как servicePack и Versionstring класса OperatingSystem, которые ПОЗВОЛЯЮТ быстро получить необходимые данные (листинг 9.16). Определение версии .NET Framework и ее сервис-пака с тех пор, как Microsoft представила публике первую версию .NET Frame-wori<:, утекло много воды. Были выпущены последовательно версии 1.0, 1.1, 2.0, 3.0 и 3.5, и перед разработчиками встала проблема определения установленных версий .NET Framework на пользовательской машине. Архитектура .NET позволяет сосуществовать нескольким версиям .NET Framework одновременно. Причем приложение, созданное, к примеру, при помощи .NET Framework 1.0, может использовать новую версию .NET Framework или по-прежнему использовать ту версию платформы, в которой оно было создано (по умолчанию). Определение версии .NET Framework, как правило, важно при установке программы на компьютер, а также при использовании каких-то новых методов, свойств, классов, не поддерживаемых в старых версиях. Самый простой и верный способ определения версии .NET Framework - считать информацию из определенной ветки реестра. В каждом новом релизе .NET Framework в реестре вносятся определенные изменения. Рассмотрим этот вопрос подробнее. MessageBox.Show( Программа может запускаться + в вашей операционной системе ); else { MessageBox.Show ( Эта версия операционной системы не поддерживается. + \г\п Используйте Windows ХР или Windows Vista ); private void butCheckOS Click(object sender, EventArgs e) { CheckOSVersion(); Примечание Пример находится в папке OperatingSystemDemo на прилагаемом диске.
|
© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки. |