При разработке Windows-приложений часто приходится иметь дело с типом TCHAR. Но строковые функции для работы с ним не на слуху. Их приходится постоянно вспоминать. Для решения этой проблемы я составил таблицу, в которой приведено соответствие строковых функций для типов char, wchar_t и TCHAR. Читать полностью →
Записи в рубрике: Windows
Чем плоха функция PulseEvent
Лично мне нравится функция PulseEvent. Она освобождает и тут же вновь захватывает объект событие. Но, как справедливо отметили в комментариях к одному из моих прошлых постов, компания Microsoft не рекомендует ее к использованию. Вместо нее, начиная с Windows Vista, рекомендуется использовать механизм условных переменных (condition variable). Функция PulseEvent сохранена исключительно в целях обратной совместимости. Но давайте попробуем разобраться, чем она так плоха и можно ли с этим что-то сделать?
Текстовый редактор для Git в среде Windows
Git требует, чтобы каждый коммит сопровождался текстовым пояснением. Для краткого пояснения вполне достаточно ключа -m, но назначение коммита не всегда можно описать одним словосочетанием. В этом случае использовать ключ -m неудобно.
Вообще грамотное составление коммитов и комментариев к ним — отдельная тема, которую мы не будем здесь обсуждать. Я хотел прежде всего сосредоточиться на инструментарии. Точнее поделиться своим личным опытом поиска оного в среде Windows. Читать полностью →
Две проблемы использования Git в Windows
Все знают, что Git изначально появился в Linux и только потом его портировали в Windows. Это наложило определенный отпечаток на его работу в «не родной» для себя среде. Сегодня я опишу две проблемы, с которыми я столкнулся при использовании Git в среде Windows. Читать полностью →
Тестирование консольной программы с помощью bat файла 2
Продолжаем наш разговор о тестировании приложений с помощью bat файлов. В прошлой статье мы рассмотрели, как провести однократный тест. Но что если тестов несколько? Читать полностью →
Тестирование консольной программы с помощью bat-файла
Типичная ситуация: вы написали программу и хотите проверить ее работу. Проводить тесты вручную неудобно. Нужно как-то автоматизировать этот процесс. Что если использовать bat-файлы? Читать полностью →
Символические ссылки не удаляют себя из пути
Несколько дней назад я работал с символическими ссылками в Linux. Я пытался с их помощью решить одну задачу, но мне это не удалось. Как оказалось, они не удаляют себя из полного пути к файлу, на что я рассчитывал. Позже выяснилось, что похожим образом себя ведут и их братья в Windows. Читать полностью →
О важности префикса «\\\\?\\\\»
В одном из своих прошлых постов я писал о получении списка доступных COM портов на основе информации в реестре. Порты там представлены в виде строк «COM1», «COM2» и т.д. В принципе ничто не мешает передавать их в таком виде в функцию CreateFile для открытия. Однако для большей надежности я советую добавлять к ним префикс «\\\\?\\\\». Зачем? Читать полностью →
Получение списка доступных COM портов
При программировании COM портов полезно иметь возможность получать список доступных портов на компьютере. Эта задача встречается настолько часто, что я решил затронуть ее в своем блоге. Читать полностью →
Ошибка 0xC000007B и смешение кода
Сравнительно недавно я работал над одной небольшой программой. Она была предельно простой (проверяла работу функции в подгружаемой библиотеке). Программа нормально компилировалась (даже без предупреждений), но при ее запуске выдавалось сообщение об ошибке 0xC000007B. Читать полностью →