Картинка блога

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

Продолжить чтение "Отладка сторонних библиотек в Visual Studio" »

31 августа, 2009

В этом посте я расскажу о моем адаптере для SQLite, который использовался в проекте YoutubeView. SQLite — это база данных, которая сохранаяется в одном файле. Такой способ подходит, наприемер, для оконных приложений (где в силу каких-либо причин не хочется использовать Access). CRUD — сокращение от Create, Read, Update, Delete. Это набор класс, работающий с данными базы […]

Продолжить чтение "CRUD на SQLite" »

30 марта, 2009

Вот и закончился MIX09. Он принес много интересных новостей в развитии .NET и Microsoft. Сам я конечно там не был, но внимательно следил за новостями.

Продолжить чтение "Будущее .NET" »

Несколько месяцев на блоге висел опрос о том, какой инструментарий используют посетители сайта, работающие на .NET. По результатам у меня возникло ощущение, что многие просто не знают или не понимают, что я имел в виду. Сейчас я попробую заполнить этот пробел.

Продолжить чтение "ALT.NET или инструментарий Microsoft?" »

Часто возникает потребность отфильтровать одинаковые элементы в списке. В LINQ есть метод Distinct, который получает интерфейс IEqualityComparer. Не совсем понятно, почему метод не может получать lamda-выражение. Следующий код должен исправить положение:

Продолжить чтение "Фильтр одинаковых объектов в LINQ." »

25 февраля, 2009

Microsoft предоставляет несколько способов для решения этой задачи. Все они требуют предустановленного Office соответствующей версии. Автоматизация Excel или другого Office приложения с помощью interop (m_objExcel = new Excel.Application();). Доступ к файлу через ODBC (об этом методе пойдет речь в этой статье). Использование OpenXML SDK (только для Office файлов с окончанием «X» — xlsx, docx).

Продолжить чтение "Чтение Excel файлов (XLS, XLSX) из C#" »

Во время написания своего диспетчера обновлений, наткнулся на одну задачку. Версия последнего обновления сравнивается с версией самого приложения и если последняя устарела, должна осуществятся замена файла с сервера. Оказалось, что проблема не тривиальна, за исключением тех, кто держит все классы и «неймспейсы» .NET в голове.

Продолжить чтение "Версия .NET сборки без блокирования файла." »

При создании более или менее сложных приложений для Windows. Неизбежно возникает проблема организации доступа к данным из разных потоков. В Windows.Forms это выглядит так: Cross-thread operation not valid: Control ‘textBox1’ accessed from a thread other than the thread it was created on. В WPF это выглядит так: System.InvalidOperationException: The calling thread cannot access this object […]

Продолжить чтение "Мультипоточность в Windows.Forms и WPF" »

6 февраля, 2009

Adobe Flash, или компонент Shockware Flash встроить в форму относительно легко. Точнее, также легко как и любой другой ActiveX компонент. Тем не менее, этот процесс не защищен от проблем, например, таких: Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG))

Продолжить чтение "Загрузка Flash в Windows.Forms и WPF." »

5 февраля, 2009

В прошлом году мне посчастливилось поучаствовать не лекциях (или конференции, кому как нравится) под названием Live Services JumpStart 2009. Обсуждались такие темы как Live Services, Mesh и немного Azure. Последняя является, так сказать, средой для запуска приложений в вычислительном облаке.

Продолжить чтение "Azure, Mesh и Live Services от Microsoft" »