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

Один из пользователей компилятора Visual C++ привёл следующий пример кода и спросил, почему его цикл с условием выполняется бесконечно, хотя в какой-то момент условие должно перестать выполняться и цикл должен закончиться:

#include <windows.h>

int x = 0, y = 1;
int* ptr;

DWORD CALLBACK ThreadProc(void*)
{
  Sleep(1000);
  ptr = &y;
  return 0;
}

int main(int, char**)
{
 ptr = &x; // starts out pointing to x

 DWORD id;
 HANDLE hThread = CreateThread(nullptr, 0, ThreadProc, 0, &id);

 // Ждём, пока другой поток изменит значение по указателю ptr
 // на некоторое ненулевое число
 while (*ptr == 0) { }

 return 0;
}

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

Как и во многих других проектах с открытым исходным кодом, в сообществе Visual Studio Code используются запросы на принятие изменений. С их помощью разработчики совместно исправляют ошибки и добавляют новые функции. Недавно мы обновили общедоступную пробную версию GitHub Pull Requests for Visual Studio Code, тем самым устранив проблему, с которой мы и миллионы разработчиков сталкиваемся каждый день: невозможность просматривать исходный код там, где он был написан, — в редакторе.

GitHub Pull Requests в Visual Studio Code - 1Читать полностью »

Последние несколько лет специалисты Microsoft трудились над тем, чтобы добавить поддержку инструментов разработчика Python в одни из наших самых популярных продуктов: Visual Studio Code и Visual Studio. В этом году все заработало. В статье мы познакомимся с инструментами разработчика Python в Visual Studio, Visual Studio Code, Azure и т. д. Заглядывайте под кат!

Python Developer Tools от Microsoft. Начало работы - 1Читать полностью »

Здравствуйте.
Хочу показать простой USB-логический анализатор, который можно собрать на любой отладочной плате с микроконтроллером STM32F042 например NUCLEO-F042K6 от ST. А впрочем, по ссылкам найдёте исходники и легко переделаете на любой другой из этого семейства.
В этой конструкции 8 каналов. Под них в микроконтроллере задействованы порты PA0-PA7. Максимальная частота выборки – 8 МГц. Максимальная частота входного сигнала – 2 МГц. Максимальное количество выборок на канал – 4096.
Вот здесь нужно отметить, что логический анализатор это железо & ПО для захвата сигнала и его последующего исследования, измерения, анализа интерфейсов.
Присосаться к I2C. Сделай простой логический анализатор - 1
Оболочка для ПК позволяет после захвата проанализировать сигналы на всех 8 каналах, а также Читать полностью »

Вот и подходит к концу наш цикл статей по Windows Mixed Reality. В нем мы разрабатывали с нуля приложение со смешанной реальностью на Unity в формате lab work (лабораторной работы). Сегодня — завершающий аккорд, в котором мы поговорим об очень интересной теме — о HoloLens и адаптации проекта под это устройство. Присоединяйтесь!

Адаптация проекта MR под HoloLens - 1Читать полностью »

Привет! Сегодня делимся мини-туториалом по использованию Visual Studio Code для вызова REST API в центре интернета вещей Azure. Рассмотрим все необходимые инструменты, создание HTTP-запроса, генерацию SAS и отправку запроса. Ну а в конце статьи вы найдете 3 полезных ресурса по теме.

Использование VS Code для вызова REST API в Azure IoT Hub [+ полезные материалы] - 1Читать полностью »

Мы продолжаем цикл статей по Windows Mixed Reality и разрабатываем с нуля приложение со смешанной реальностью на Unity в формате lab work (лабораторной работы). Вы можете сами, параллельно с публикацией статей, создавать такое приложение. Сегодня поговорим о пространственном звуке и о том, как же создать ощущение пребывания в другой реальности.

Как создается звук для другой реальности - 1Читать полностью »

Мы продолжаем цикл статей по Windows Mixed Reality и разрабатываем с нуля приложение со смешанной реальностью на Unity в формате lab work (лабораторной работы). Вы сможете сами, параллельно с публикацией статей, создать такое приложение. В этой части рассмотрим поддержку контроллера движения и добавим префаб динамика в виртуальную гостиную.

Разработка смешанной реальности: а вы ставили динамик в виртуальной гостиной? - 1Читать полностью »

Для проведения исследований работы программ и ОС существует очень много различного инструментария. Виртуальные машины, IDE, умные блокноты, IDA, radare, hex-редакторы, pe-редакторы, и даже одних утилит Sysinternals больше сотни — все это сделано для облегчения многих рутинных операций. Но иногда наступает момент, когда ты понимаешь, что среди всего этого многообразия тебе не хватает небольшой утилитки, которая просто сделает банальную и нехитрую работу. Можно написать скрипты на питоне или Powershell на коленке, но нередко на такие поделки без слез не взглянешь и с коллегами не поделишься.

Недавно такая ситуация снова наступила у меня. И я решил, что пора просто взять и написать аккуратную утилиту. О самой утилите я расскажу в одной из ближайших статей, но об одной из проблем во время разработки расскажу сейчас.

Ошибка проявляется так – если в WPF приложении, в стандартный контрол TextBox воткнуть много строк текста, то вызовы функции GetLineText() начиная с некоторого индекса будут возвращать неправильные строки.

Баг при работе TextBox.GetLineText в .NET WPF - 1

Неправильность заключается в том, что хоть строки будут из установленного текста, но расположенные дальше, фактически GetLineText() будет просто пропускать некоторые строки. Ошибка проявляется при очень большом количестве строк. Так я ее и встретил – попытался отобразить в TextBox’е 25 мегабайт текста. Работа с последними строками выявила неожиданный эффект.

Гугл подсказывает, что ошибка существует с 2011 года и Microsoft не особо торопится что-то исправлять.
Читать полностью »

Мы продолжаем цикл статей по Windows Mixed Reality. В его рамках с нуля разработаем приложение со смешанной реальностью на Unity в формате lab work (лабораторной работы). Вы сможете сами, параллельно с публикацией статей, создать такое приложение. Сегодня поговорим о настройке среды VR, включая создание виртуальной комнаты.

Доступная смешанная реальность: как создать виртуальное пространство - 1Читать полностью »


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