Рубрика «Visual Studio» - 40

Довольно давно я делился проблемой тестирования кода в финализаторе и недавно жаловался на падение теста (Как тестировать код финализатора (c#) и Как тестировать код финализатора (c#). Послесловие: тест все-таки упал).
В ходе обсуждения комрадом withkittens была высказана идея:

Финализатор (при правильной реализации IDisposable pattern) должен (should) вызывать Dispose(false). Этот факт можно тестировать статическим анализом. Соответственно, если Dispose(false) вызывает удаление файла (вы же написали тест?), то можно быть уверенным, что и финализатор тоже вызовет удаление файла, unit-тест излишен.

Мне эта идея показалась очень здравой, кроме того, иногда хочется контролировать исходный код более кастомно, чем дает встроенный анализ кода или решарпер.
Опыт реализации кастомных правил анализа кода под катом + «как ozcode помог в процессе исследования внешней библиотеки»
Читать полностью »

StdAfx.h, Precompiled headers
Статья рассчитана на людей, которые знакомятся со средой Visual Studio и пытаются компилировать в ней свои Си++-проекты. В незнакомой среде всё кажется странным и непонятным. Особенно новичков раздражает файл stdafx.h, из-за которого возникают странные ошибки во время компиляции. Очень часто всё заканчивается тем, что новичок долгое время везде старательно отключает Precompiled Headers. Чтобы помочь людям разобраться что к чему, и была написана эта статья.
Читать полностью »

Все посты серии:
Часть 1. Введение и настройка
Часть 2. Изучение кода
Часть 3. VST и AU
Часть 4. Цифровой дисторшн
Часть 5. Пресеты и GUI
Часть 6. Синтез сигналов
Часть 7. Получение MIDI сообщений
Часть 8. Виртуальная клавиатура
Часть 9. Огибающие


Звук интересен тогда, когда в нем происходят какие-то изменения. Давайте сделаем генератор огибающей (envelope), которая будет менять громкость звука.
Читать полностью »

Все посты серии:
Часть 1. Введение и настройка
Часть 2. Изучение кода
Часть 3. VST и AU
Часть 4. Цифровой дисторшн
Часть 5. Пресеты и GUI
Часть 6. Синтез сигналов
Часть 7. Получение MIDI сообщений
Часть 8. Виртуальная клавиатура


Настройка виртуальной клавиатуры в REAPER не так очевидна, к тому же хост пользователя может вообще не иметь такой функциональности. Давайте добавим свою маленькую экранную клавиатуру в GUI.
Читать полностью »

Все посты серии:
Часть 1. Введение и настройка
Часть 2. Изучение кода
Часть 3. VST и AU
Часть 4. Цифровой дисторшн
Часть 5. Пресеты и GUI
Часть 6. Синтез сигналов
Часть 7. Получение MIDI сообщений


Пока что мы генерировали только постоянную звуковую волну, которая просто звучала на заданной частоте. Давайте посмотрим, как можно реагировать на MIDI сообщения, включать и выключать генерацию волны на нужной частоте в зависимости от получаемой ноты.
Читать полностью »

Все посты серии:
Часть 1. Введение и настройка
Часть 2. Изучение кода
Часть 3. VST и AU
Часть 4. Цифровой дисторшн
Часть 5. Пресеты и GUI
Часть 6. Синтез сигналов


После улучшений интерфейса пора бы заняться и программированием. В этом посте мы сгенерируем классические синус, пилу, треугольник и меандр.

Читать полностью »

Все посты серии:
Часть 1. Введение и настройка
Часть 2. Изучение кода
Часть 3. VST и AU
Часть 4. Цифровой дисторшн
Часть 5. Пресеты и GUI
______________________________________________________________

Давайте добавим несколько предустановок для плагина и создадим [относительно] симпатичный интерфейс.
Читать полностью »

Все посты серии:
Часть 1. Введение и настройка
Часть 2. Изучение кода
Часть 3. VST и AU
Часть 4. Цифровой дисторшн
______________________________________________________________

Пора приступать к написанию нашего первого плагина. Это будет грязный цифровой дисторшн. Если говорить точнее, плагин будет просто обрезать пики амплитуды звукового сигнала.
Читать полностью »

Как попробовать новую Visual Studio “14” CTP без установки?

Недавно была представлена предварительная версия следующего поколения Visual Studio под кодовым именем “14”. Visual Studio “14” CTP предлагает сегодня попробовать некоторые из тех функций и возможностей, которые будут доступны разработчикам в скором времени. Среди них:

Про некоторые новые возможности Visual Studio “14” CTP уже написал на Хабре (читать статью). Эта предварительная версия не имеет лицензии go-live и не должна применяться в коммерческой разработке, более того рекомендуется устанавливать ее отдельно от рабочего окружения и других версий Visual Studio.

Однако существует очень простой способ попробовать все фишки Visual Studio “14” CTP и без самостоятельной установки – использование готового образа VM в галереи Microsoft Azure.
Читать полностью »

Предыдущие посты из серии:
Часть 1. Введение и настройка
______________________________________________________________

Изучение кода

Давайте получше рассмотрим наш тестовый проект. Самые важные файлы — resource.h, MyFirstPlugin.h и MyFirstPlugin.cpp. На данный момент плагин представляет собой простой регулятор громкости звука.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js