Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Перестают работать точки останова (breakpoints)
|
|||
|---|---|---|---|
|
#18+
Всем привет. (работаю в Microsoft Visual Studio 2010) У меня есть проект DLL-ка, которая является плагином для другой программы. Закидываю эту DLL-ку в папку с плагинами основной программы, запускаю эту программу, делаю Attach из студии и отлаживаю ее. Проблема, собственно, вот в чем. Когда в свойствах проекта выставлено следующее: Configuration Properties -> Project Defaults -> Common Language Runtime Support -> No Common Language Runtime Support, C/C++ -> Code Generation -> Enable C++ Exceptions -> /EHsc, C/C++ -> Code Generation -> Runtime Library -> /MTd Точки останова работают отлично если следующее: Configuration Properties -> Project Defaults -> Common Language Runtime Support -> Common Language Runtime Support, C/C++ -> Code Generation -> Enable C++ Exceptions -> /EHa, C/C++ -> Code Generation -> Runtime Library -> /MDd, то точки останова работать перестают. Сколько с этим ни бился, сколько ни пытался гуглить, ничего, что бы помогло, найти не удалось. Помогите, пожалуйста, оживить точки. Спасибо заранее. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.07.2013, 14:40 |
|
||
|
Перестают работать точки останова (breakpoints)
|
|||
|---|---|---|---|
|
#18+
kir86975, C/C++ -> Code Generation -> Runtime Library -> /MTd Точки останова работают отлично Только эта опция влияет на отладку. Остальные из приведённых -- не влияют. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.07.2013, 15:43 |
|
||
|
Перестают работать точки останова (breakpoints)
|
|||
|---|---|---|---|
|
#18+
kir86975, Это Configuration Properties -> Project Defaults -> Common Language Runtime Support -> Common Language Runtime Support, тебе использовать НЕ НУЖНО. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.07.2013, 15:44 |
|
||
|
Перестают работать точки останова (breakpoints)
|
|||
|---|---|---|---|
|
#18+
kir86975, Помогите, пожалуйста, оживить точки. Спасибо заранее. Ну и собственно -- главное -- надо включить генерацию отладочной информации при компиляции и построение .PDB при сборке. При отладке .PDB должно быть той же версии и лежать рядом с .DLL Также важно, чтобы И ПРИЛОЖЕНИЕ также было собрано в Debug-режиме и с отладочной информацией (но это уже не обязательно). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.07.2013, 15:48 |
|
||
|
Перестают работать точки останова (breakpoints)
|
|||
|---|---|---|---|
|
#18+
kir86975, Пока всё были не ответы на твои вопросы, так всё же объясни, что значит "Точки останова работают отлично/точки останова работать перестают" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.07.2013, 15:49 |
|
||
|
Перестают работать точки останова (breakpoints)
|
|||
|---|---|---|---|
|
#18+
MasterZiv, Перестают, это значит что отображаются пустые окружности на полях с красной границей, а не красные круги. ) Ну и на них дебагер не останавливается. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.07.2013, 15:53 |
|
||
|
Перестают работать точки останова (breakpoints)
|
|||
|---|---|---|---|
|
#18+
kir86975MasterZiv, Перестают, это значит что отображаются пустые окружности на полях с красной границей, а не красные круги. ) Ну и на них компилятор не останавливается. Это значит, ты попросил дебагер поставить в данной строке кода останов, но после запуска программы дебагер не нашёл код, который соответствует этой строке кода и не смог поставить останов. Т.е. по-видимому либо у тебя нет debug info вообще, либо она устаревшая. В консольке IDE, когда приложение грузится, пишутся все загружаемые модули (.dll .exe) и для них ищется debug info, и пишется, если оно не найдено. Посмотри внимательно, должно находится debug info (обычно PDB) хотя бы для твоего отлаживаемого модуля. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.07.2013, 15:57 |
|
||
|
Перестают работать точки останова (breakpoints)
|
|||
|---|---|---|---|
|
#18+
MasterZiv, Похоже, что ошибку я нашел. Под дебагом в окне модулей основное приложение просто не грузит мою DLL. А ошибка в том, что ему нужно обязательно MTd. Вот засада. Просто хотел использовать MemoryStream, а для него нужно обязательно включить Common Language Runtime Support. И тут эта опция остальные за собой потянула. Спасибо большое за ответ. Буду искать аналог ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.07.2013, 15:59 |
|
||
|
Перестают работать точки останова (breakpoints)
|
|||
|---|---|---|---|
|
#18+
kir86975, Common Language Runtime Support НЕ НУЖЕН для программирования на С++. Вообще. Что это за MemoryStream ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.07.2013, 19:14 |
|
||
|
Перестают работать точки останова (breakpoints)
|
|||
|---|---|---|---|
|
#18+
Блин, это std::stingstream. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.07.2013, 19:15 |
|
||
|
Перестают работать точки останова (breakpoints)
|
|||
|---|---|---|---|
|
#18+
kir86975Под дебагом в окне модулей основное приложение просто не грузит мою DLL. А ошибка в том, что ему нужно обязательно MTd. Вот засада. Просто хотел использовать MemoryStream, а для него нужно обязательно включить Common Language Runtime Support. Как одно связано с другим ? /MTd Defines _DEBUG and _MT. Defining _MT causes multithread-specific versions of the run-time routines to be selected from the standard .h files. This option also causes the compiler to place the library name LIBCMTD.lib into the .obj file so that the linker will use LIBCMTD.lib to resolve external symbols. Either /MTd or /MDd (or their non-debug equivalents /MT or MD) is required to create multithreaded programs. Это -- использование CRT в виде .DLL в multithreaded debug варианте. /CLR используется или не используется отдельно и совсем независимо от ключа /Mt(d) Я ещё раз хочу подчеркнуть, что и приложение, и твой плагин должны использовать одну и ту же сборку (Debug/Release) и один и тот же вариант библиотеки MSVCRT. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.07.2013, 19:21 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=38322379&tid=2020109]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
78ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
57ms |
get tp. blocked users: |
2ms |
| others: | 12ms |
| total: | 194ms |

| 0 / 0 |
