Сборка 'Выпуска' Visual C++ 2008 года содержит отладочную информацию

Используйте sprintf , чтобы поместить ваше значение в строку следующим образом:

sprintf(UPDATE_SQL,"UPDATE students SET marks=%d WHERE name='%s'",
yourval,yourstrin);
17
задан Sam 20 October 2008 в 12:27
поделиться

6 ответов

Мы включили те настройки в наших коммерческих версиях уже много лет без очевидной оборотной стороны. Позитивные аспекты огромны, все же.

Мы интегрировали поставщика программного блока дампа катастрофического отказа, который упаковывает дамп наряду с некоторой другой информацией и посылает его по электронной почте (с согласием пользователя) к ящику входящих сообщений компании. Это помогло нам найти проблемы, которые взяли бы нас навсегда , чтобы воспроизвести и найти иначе.

, Хотя это немного вне темы, вот ссылка на превосходный вклад, который кто-то сделал, который дает Вам простой способ включать генератор отчетов катастрофического отказа в C++ / Приложение Windows: http://www.codeproject.com/KB/debug/crash_report.aspx

Примечание: было бы мудро, тем не менее, не включать файл PDB с Вашим выпуском. Тем не менее необходимо сохранить файл PDB, который соответствует выпущенной версии так, чтобы можно было правильно отладить проблему в будущем. Если файл PDB будет использоваться, который не был создан с тем же кодом, который создал exe, стек, который Вы видите, когда Вы пытаетесь отладить dmp, будет неправильным.

32
ответ дан 30 November 2019 в 11:23
поделиться

Они включены по умолчанию потому что:

  1. , Если Вы не создаете их теперь, Вы не можете создать их позже.
  2. Вам нужны они.

информация об отладке Включения в Visual C++ заставляет маленькую запись быть добавленной к двоичному заголовку, определяя PDB для этого двоичного файла. Это является слишком маленьким, чтобы быть любого беспокойства размера и не содержит полезных секретов, которые Вы могли бы быть обеспокоены совместным использованием.

(Запись заголовка маркирована RSDS: кто может предположить почему?)

, Конечно, те PDBs будут использовать больше дискового пространства на Вашей машине сборки / в Ваших резервных копиях. Соглашение с ним. Вам нужны те PDBs, когда это прибывает время для отладки чего-то.

4
ответ дан 30 November 2019 в 11:23
поделиться

.exe будет немного больше из-за ссылки на .pdb файл (т.е. дополнительный путь). Это об этом.

0
ответ дан 30 November 2019 в 11:23
поделиться

Ну, Вы могли бы обеспечить эту отладочную информацию, и кто-то мог бы использовать ее для разборки кода. Для некоторых боящихся людей это одно могло бы быть причиной не оставить это этим путем.

Лично, я иногда думаю, что полезно иметь отладочную информацию в наличии для версии выпуска - этот способ, которым намного легче проанализировать crashdump, который будет сохранен доктором Watson в случае сбоев приложения.
я действительно находил, что немного действительно неясные прослушивают этот путь.

2
ответ дан 30 November 2019 в 11:23
поделиться

Наличие этих опций на не обязательно делает Ваши исполняемые файлы больше. Отладочная информация хранится в отдельном файле с дополнительным PDB. Имение в наличии отладочной информации никогда не является плохой идеей, если Вы не действительно действительно коротки на области свободной памяти.

, Возможно, вот почему они идут по умолчанию: они не вредят Вашим исполняемым файлам. Сборки конечных версий действительно используют оптимизацию, такую как функция встраивающий и генерирующий оптимизированный код, который мешает ступать через, в то время как сборкам Отладки выключили эти опции.

Никакая оборотная сторона здесь.

Dave

2
ответ дан 30 November 2019 в 11:23
поделиться

Добавьте, что переключатель/Zi действительно делает больший .exe файл в дополнение к PDB. Однако можно отдельно связаться с/OPT:REF для сведения .exe размера файла к минимуму.

1
ответ дан 30 November 2019 в 11:23
поделиться
Другие вопросы по тегам:

Похожие вопросы: