Вчера я завершил основную часть программы YouTube View. Основной задачей которой является конвертирование файлов из YouTube в AMV. AMV это расширение файла, который можно просматривать на дешевых китайских плеерах. Среди дополнительных возможностей — скачивание и просмотр YouTube роликов без браузера. Пользуйтесь на здоровье. 😉
Часто возникает потребность отфильтровать одинаковые элементы в списке. В LINQ есть метод Distinct, который получает интерфейс IEqualityComparer. Не совсем понятно, почему метод не может получать lamda-выражение. Следующий код должен исправить положение:
Microsoft предоставляет несколько способов для решения этой задачи. Все они требуют предустановленного Office соответствующей версии. Автоматизация Excel или другого Office приложения с помощью interop (m_objExcel = new Excel.Application();). Доступ к файлу через ODBC (об этом методе пойдет речь в этой статье). Использование OpenXML SDK (только для Office файлов с окончанием «X» — xlsx, docx).
Во время написания своего диспетчера обновлений, наткнулся на одну задачку. Версия последнего обновления сравнивается с версией самого приложения и если последняя устарела, должна осуществятся замена файла с сервера. Оказалось, что проблема не тривиальна, за исключением тех, кто держит все классы и «неймспейсы» .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" »
Adobe Flash, или компонент Shockware Flash встроить в форму относительно легко. Точнее, также легко как и любой другой ActiveX компонент. Тем не менее, этот процесс не защищен от проблем, например, таких: Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG))
В прошлом году мне посчастливилось поучаствовать не лекциях (или конференции, кому как нравится) под названием Live Services JumpStart 2009. Обсуждались такие темы как Live Services, Mesh и немного Azure. Последняя является, так сказать, средой для запуска приложений в вычислительном облаке.
Продолжить чтение "Azure, Mesh и Live Services от Microsoft" »
В одной из моих прошлых записей я рассказывал, что LINQ не совсем белый и пушистый, а иногда даже сильно ругается. Речь шла о методе SaveOrUpdate, сейчас я продолжу тему. Прошлый пример похож на то, что по сути должен делать сам LINQ to MS SQL провайдер, естественно с кучей дополнительных деталей, на которых по всей видимости, […]
Продолжить чтение "LINQ Insert or Update еще одно решение." »
Давно не писал уже ни строчки в блоге, связанно это с целым рядом обстоятельств. Некоторые обстоятельства хорошие, некоторые не очень. Прежде всего это связанно с нехваткой времени. Вот и сейчас пишу из-за бессонницы. Появилось у меня непреодолимое желание, что-то написать, даже спать не могу! 😉 А писать есть о чем. World Secret В прошлом году […]