В предыдущем посте о я показал насколько легко можно создать собственную секцию в конфигурационном файле. Теперь я расскажу, как зашифровать любую секцию в конфиге, сделав это прозрачно для пользователя. С этим нам поможет встроенный в Windows DPAPI. DPAPI не требует пароля для шифрования и расшифровки, для этого используется встроенный в систему ключ привязанный к пользователю […]
Продолжить чтение "Шифрование секций. Web.config и App.config для «C# продолжающих»." »
Этим постом я начну короткий цикл статей о конфигурационных файлах. Казалось бы, что может быть проще редактирования конфиг файлов, тем не менее есть несколько моментов, которые могут показаться сложными для начинающего или даже неизвестными для «продолжающего си шарпера». Нет, это статья не о мало известных секциях и даже не о том том как круто можно […]
Продолжить чтение "Конфигурационные секции. Web.config и App.config для «C# продолжающих»." »
Службы Windows это удобный способ запускать и контролировать программы, выполняемые на заднем плане. Они часто используются в больших приложениях или как альтернатива консоли или Form приложения, которое можно спрятать в трей. Сегодня я попробую объединить все идеи и наработки касательно сервисов и консольных приложений, используемые мной за время моего «молчания» лета.
Продолжить чтение "Еще раз о работе со службами (Windows Service) на C#" »
В Visual Studio есть шаблон для создания сервисов. Проблема в том, что запустится они могут только с помощью SVCUTIL, а это отнимает время на сопровождение (обычный F5 гораздо удобней и быстрее). Еще возникают неудобства с отладкой — конечно, Debugger.Launch() никто не отменял, но эти 5 секунд хлопанья по окошкам для подключения программы к студии быстро […]
Продолжить чтение "C#: Запуск Windows сервисов как консольных приложений" »
Устал я ждать обновление Longterm версии, так-что решил обновится уже сейчас. Longterm версия сейчас 2.6.7 особо не отличается от описанной в моем предыдущем посте. И для меня, как для человека, пишущего код на C# практически каждый день — морально устарела. Чтобы сохранить Вам, дорогой читатель немного времени, выложил я также, обновленные скрипты. Сегодня речь пойдет […]
Продолжить чтение "Компиляция Mono 2.10.2 с исходного кода" »
Из коробки последняя версия Mono живет только в дистрибутивах от Novell. Главный пример тому OpenSUSE. В других дистрибутивах — таких как Debian, Fedora и Ubuntu в репозиториях пылится не очень свежая версия. Обычно это LTS версия 2.6 занимающая свое место с конца 2009-ого года. Следующей LTS версией будет 3.x релиз которой еще не запланирован. Чтобы […]
Продолжить чтение "Установка Mono 2.10.2 и MonoDevelop 2.6 на Debian" »
Что нужно для того, чтобы запустить приложения на базе .NET на выделенном линукс (пусть даже виртуальном) сервере? Конечно Mono! В прошлом году я уже касался темы установки Mono на Dreamhost. После этого прошло некоторое время, за которое язык и сам Моно успел обзавестись Linq со всеми вытекающими, PLinq а также полной поддержкой MVC и WCF. […]
В JavaScript уже давно есть глобальная функция setTimeout. В полном .NET (например Windows Forms) для этих-же целей можно использовать таймер (Threading.Timer) с настройкой без повторений. А вот для SilverLight такой метод реализовать почему-то забыли, хотя именно в интерфейсе пользователя он необходим больше всего. Примеров можно придумать массу. Первое что приходит в голову — отложенное выполнение […]
Под промышленным здесь я имею в виду Enterprise, а мега — то, на что часто бизнес объекты становятся похожими. На разных блогах по программированию часто сравнивают обычное программирование и программирование для Enterprise. Я решил пофантазировать на тему содержимого и свойств — этого самого объекта. В качестве пояснений я использую C#, но сама идея не зависит от […]
Продолжить чтение "«Мега» объект промышленного приложения" »
Тема не новая, просто еще раз с ней столкнулся, в одном неожиданном для меня месте. Так что, если вы работаете со значениями с плавающей точкой, будьте готовы к вот такому, с первого взгляда не понятному явлению. Это скриншот из панели WatchList VisualStudio 2010, получается, что 1.6+0.4 не равно 2, если используется тип float. Попробую объяснить.