История о том, как в момент запуска отладки из любой среды разработки (Visual Studio 2022/2026, Visual Studio Code) с разными проектами я ловил ошибку: "Вызвано исключение по адресу 0x00000000 в ***.exe: 0xC0000005: нарушение прав доступа при исполнении по адресу 0x00000000"
Как всё началось
Меня попросили помочь в моддинге старой доброй GTA SA и решить одну интересную задачу.
Я подготовил проект в Visual Studio 2022, тыкаю F5 и получаю ошибку:
Вызвано исключение по адресу 0x00000000 в gta_sa.exe: 0xC0000005: нарушение прав доступа при исполнении по адресу 0x00000000
Тогда не думал, что смогу побороть эту ошибку, поэтому скрина нет, извините.
А что делать?
Переустановить игру, перезагрузить компьютер, переустановить Visual Studio 2022 и поставить 2026 insiders, переустановить драйвера видеокарты, добавить игру в исключения DEH в windows и перепробовать ещё кучу не озвученных вариантов потратив на это 6 часов — это всё мимо и не решает проблему!
Окей, я понимаю, что отладки нет и может студия глючит (это ещё было до переустановки), поэтому создаю новый проект с использованием CMake, прописываю явное использование дебаггера и получаю это:

В Visual Studio тишина, а в VS Code дебаггер смог выплюнуть мне подробный стек трейс.
Сижу с лицом лица и удивляюсь тому, а зачем здесь QuickTime?
QuickTime
Лучше для начала понять, что делает QuickTime?
QuickTime это медиаплеер, воспроизводит видео и аудио (как VLC Media Player, KMPlayer и другие).
Но он также является фреймворком для работы программ/игр.
Интересный факт, раньше требовалось дополнительно его установить если Вы устанавливали себе Sony Vegas Pro (ныне Vegas PRO). Это нужно было для того, чтобы добавить поддержку некоторых форматов и вроде бы для формата «.MP4» включительно.
Решение
Посмотрев на скрин выше, первое что пришло в голову, это вопрос: «А что будет, если я просто удалю QuickTime?».
Так я и сделал, даже компьютер не пришлось перезагружать, отладка сразу же заработала.
Чуть подробнее изучаю проблему
Через 2 дня поднимаю эту тему, хотя бы ради того, чтобы получить больше деталей. Тогда это всё было бегло и быстро, а тут хочется найти что-то ещё, вдруг что интересное упустил.

Я установил QuickTime (ту же версию, которую ранее удалял) в надежде воспроизвести проблему. Особенность ситуации в том, что QuickTime стоял с июля 2024 года по конец октября 2025, за год я несколько раз создавал проекты в Visual Studio 2022, дебажил GTA SA и всё прекрасно работало!

Думаю проблема не зависит от версии QuickTime, но было что-то, что сломало QuickTime и из-за этого я получал ошибку при запуске отладки как было указано в начале статьи.
Почему QuickTime подгружается для "gta_sa.exe"?
Это хороший вопрос, но предполагаю это связано с тем, что QuickTime заменяет стандартные библиотеки для воспроизведения звуков и видео-клипов поскольку является фреймворком.
Вывод
Мораль такова, не ставить QuickTime и иметь ввиду, что стороннее ПО может ломать отладку
p.s. а можно было всего лишь Windows переустановить
Комментарии (11)

sergio_nsk
26.10.2025 16:13Почему QuickTime подгружается для "gta_sa.exe"?
Это называется DLL Hell. После удаления QT, пути к его библиотекам удалились из %PATH%. После новой установки QT, его пути оказались в конце %PATH% и в этот раз не смогли вмешаться.
Переустановить игру, перезагрузить компьютер, переустановить Visual Studio 2022 и поставить 2026 insiders, переустановить драйвера видеокарты, добавить игру в исключения DEH в windows и перепробовать ещё кучу не озвученных вариантов потратив на это 6 часов — это всё мимо и не решает проблему!
Это типичные истеричные, бессистемные действия новичка.

NutsUnderline
26.10.2025 16:13а поделитесь мудростью - как действуют опытные эксперты? ужели читают мануалы? Или ставят линукс и там читают про ошибки в логах?

VadimBoev Автор
26.10.2025 16:13Отдельно QT не было на компе.
Вчитываемся ещё раз, год стоял QuickTime, отладка работала всегда везде во всех проектах.
И не с того ни с сего просто перестала и из последнего стек трейса висел как на скрине только QuickTime. Почему он сломался остаётся загадкой.
sergio_nsk
26.10.2025 16:13Отдельно QT не было на компе.
год стоял QuickTime
Как понимать эти взаимно исключающие утверждения?
отладка работала всегда везде во всех проектах
Ну работало оно, пока не стали совпадать имена DLL, всё меняется ведь.

VadimBoev Автор
26.10.2025 16:13Как понимать эти взаимно исключающие утверждения?
Объясню. Я тогда подумал о том, что вы имели ввиду, что ранее ставился когда-то к примеру "Qt Creator", но его никогда не было. И это могло сказаться на работе QuickTime. НО!
Ну работало оно, пока не стали совпадать имена DLL, всё меняется ведь.
Я могу согласиться с DLL Hell который вы ранее описали. И это хотя бы так объясняет эту не простую ситуацию. Поэтому, спасибо, буду знать.
pinac
Дверьми похлопал, по колесам постучал, вроде завелась. Мораль такова, не сидите сложа руки, что нибудь удалите или поставьте, может и заведется.