понедельник, 1 мая 2017 г.

Статья на Хабре про WinDbg

Привет! Сбылась давняя мечта программиста. :) На Хабре в корпоративном блоге была опубликована моя первая статья. Статья называется "Поиск неисправностей с помощью WinDbg, Sos и Sosex". Чтобы не нарушать правила Хабра, приведу только краткий обзор. Полностью статью можно прочитать по ссылке выше.

Итак, статья рассказывает о том, как анализировать дампы памяти .Net приложений, используя WinDbg и плагины Sos и Sosex. Из нее вы научитесь как снять полный ламп памяти, как настроить WinDbg и на примерах сможете научиться как искать причины взаимоблокировок, утечек памяти и высокого потребления CPU.

Приятного чтения! Надеюсь, что эта статья будет полезна в вашей практике.

суббота, 3 сентября 2016 г.

Как найти исключение, которого нет

Привет! Может случиться так, что ваша система работает у заказчика и периодически ведет себя некорректно из-за логических ошибок, но аварийно не завершается. Одной из причин такого поведения может служить пресловутый catch по всем типам исключений с дальнейшим проглатыванием. Как быть в таком случае? Сейчас я расскажу.

воскресенье, 13 марта 2016 г.

Десериализация деревьев из Json

Привет! Данная статья – это прежде всего напоминание для меня лично. Периодически возникает следующая задача. Есть иерархическая структура данных, представленная в формате json, которую необходимо в объекты C#. При этом узлы дерева имеют разное значение и должны десериализоваться в разные классы. Как это сделать описано ниже.

среда, 1 апреля 2015 г.

Создание инсталлятора с помощью WiX. Часть 4. Custom Actions


Привет! Сегодня в продолжение цикла статей о создании инсталляторов мы рассмотрим, как научить инсталлятор выполнять какие-то дополнительные действия, не предусмотренные WiX из коробки.

среда, 17 декабря 2014 г.

Создание инсталлятора с помощью WiX. Часть 3. Обновление

Привет! Наконец удалось найти время для продолжения серии заметок про написание инсталляторов. В прошлых статьях мы рассмотрели создание простого инсталлятора,  который умеет принимать от пользователя номер порта, на котором будет работать устанавливаемая служба.

понедельник, 14 июля 2014 г.

Создание инсталлятора с помощью WiX. Часть 2. Пользовательские диалоги

Привет! В прошлой статье мы рассмотрели создание простого инсталлятора. Он умеет копировать файлы в заданную директорию, создает ярлыки в меню Пуск и даже позволяет удалять установленную программу. Все это мы сделали без особых усилий. Этого функционала уже немало, но, как всегда, хочется чего-то большего.

понедельник, 30 июня 2014 г.

Создание инсталлятора с помощью WiX. Часть 1. Простой инсталлятор

При написании коммерческого софта часто встает вопрос о способе его поставки конечному пользователю. Тут можно рассмотреть несколько вариантов: мы можем поставлять программное обеспечение в виде набора файлов, копируя его на рабочие места пользователей и затем, настраивая вручную, можем разворачивать программное обеспечение с помощью облачных сервисов, например Windows Azure. Также мы можем предоставлять пользователю пакет программ в виде инсталлятора, который включает в себя этап настройки приложений.