Я пытаюсь отладить проект на MSVS 2010. Реализация - C++; когда я обманываю исходный код, я получаю следующий отказ от MSVS.Доступ к местоположению чтения voilla
Отказ сообщил:
"First chance exception at 0x00000013fb5b9ee in unit.exe: 0xc00000005 access voilation reading location 0x00000000000000c."
проблема заключается в получении адреса.
int base = (*(abc::g_runc1.m_paulsenderpin.m_lastchunk_p)).xcpp::cxcppoutput::m_baseaddress;
мой проект очень большой, чтобы включать в себя исходный код,
Вкратце это можно описать как: - Пол представляет собой модуль с отправителем штифтом, подключенного к c1. - xcpp - это интерфейс
Этот исходный код и проект верны и работают без сбоев на компиляторе ARM, но на MSVS он дает ошибку нарушения прав доступа. В msdn есть несколько сообщений о разрешении, устанавливаемом сборкой, и который позволяет читать адресное местоположение. если да, то как его изменить ...? или есть ли лучший вариант, чтобы найти проблему ...?
Любая помощь приветствуется.
Что такое 'abc :: g_runc1.m_paulsenderpin.m_lastchunk_p'? Как это объявлено? Если это указатель, вы проверяете, что это не 'NULL'? –
abc :: g_runc1.m_paulsenderpin.m_lastchunk_p = 0x00000000000 paulsenderpin struct {pinbase, m_currentchunk, m_lastchunk, ....}. память распределяется на paul для вывода отправителя, memblock 1024 байта. Дополнительно к этому, есть 8 таких контактов, paul, polly, raul, ..... baseaddress всех, кроме paul, угасают одинаково и не имеет ошибки памяти. только paul имеет эту проблему везде, где она используется. и MSVS выбрасывает для него исключение, но ARM не делает этого. –
Если это ноль, значит, это 'NULL', и это, как правило, незаконный адрес. –