Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Поиск иголки в стоге сена, Как быстрее выявить ошибку 
:(
    Опции темы
Nadezda
  Дата 19.5.2008, 11:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 28
Регистрация: 31.5.2004

Репутация: нет
Всего: нет



Имется громадный проект, написанный на C++. Куча функций, процессов и т. п. Недавно выяснилось, что новые версии проекта почему-то нормально запускаются на одних компьютерах и ломаются на некоторых других. Есть подозрение, что это из-за перхода на UNICODE. Проверили процессы и функции, которые должны работать при запуске программы - вроде всё срабатывает нормально. Но всё равно программа где-то ломается. Сложность в том, что никак не получается определить, на какой именно функции ломается программа.  smile 

Есть ли более менее оптимальный способ определить, в каком именно месте сломалась программа на другом компьютере, не устанавливая Visual Studio на этом компьютере?
PM MAIL   Вверх
Earnest
Дата 19.5.2008, 11:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5962
Регистрация: 17.6.2005
Где: Рязань

Репутация: 53
Всего: 183



Вывод трассировочных сообщений. Проще всего использовать готовый механизм (OutputDebugString) + просмотрщик (например DebugView, см www.sysinternals.com). Но можно и свой механизм соорудить (вывод лога в файл). Раскидываешь трассировку по программе - сначала реденько, потом по мере приближения к багу - учащаешь сеть до полного вылова.


--------------------
...
PM   Вверх
Rififi
Дата 19.5.2008, 11:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1254
Регистрация: 9.3.2008

Репутация: 11
Всего: 36



Цитата(Nadezda @  19.5.2008,  11:03 Найти цитируемый пост)
Есть ли более менее оптимальный способ определить, в каком именно месте сломалась программа на другом компьютере

Логи и юнит-тесты, причём до того как.
PM MAIL   Вверх
maxim1000
Дата 19.5.2008, 11:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 3334
Регистрация: 11.1.2003
Где: Киев

Репутация: 17
Всего: 110



можно попробовать сделать клон этой машины в VMVare, и дальше уже над ним издеваться на своём компьютере

(сам акого никогда не делал smile)


--------------------
qqq
PM WWW   Вверх
Ln78
Дата 19.5.2008, 16:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 274
Регистрация: 25.11.2006

Репутация: 13
Всего: 15



Цитата(Nadezda @  19.5.2008,  12:03 Найти цитируемый пост)
Есть ли более менее оптимальный способ определить, в каком именно месте сломалась программа на другом компьютере, не устанавливая Visual Studio на этом компьютере? 

Как одно из компромиссных решений - установить на том компьютере только малую часть Visual Studio, а именно - удалённый отладчик rdbgsetup.exe. При этом, конечно, лучше использовать на том компьютере отладочную версию и самого проекта.
PM MAIL   Вверх
Earnest
Дата 20.5.2008, 15:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5962
Регистрация: 17.6.2005
Где: Рязань

Репутация: 53
Всего: 183



Цитата(Ln78 @  19.5.2008,  17:46 Найти цитируемый пост)
Как одно из компромиссных решений - установить на том компьютере только малую часть Visual Studio, а именно - удалённый отладчик rdbgsetup.exe. При этом, конечно, лучше использовать на том компьютере отладочную версию и самого проекта. 

Тогда есть шанс, что ошибки пропадут... разное поведение скорее всего связано с разными ОС и установленным софтом...
Конечно, можно бы попробовать дебаг, вдруг повезет и ошибка обнаружится. Но если пропадет, то ситуацию можно и не восстановить... Разве что это софт для внутреннего пользования, и цель - лишь бы заработало ...




--------------------
...
PM   Вверх
Lycifer
Дата 21.5.2008, 14:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 144
Регистрация: 4.11.2007

Репутация: нет
Всего: нет



Если ОС разные то это может быть из-за культуры(то есть на пример вещественные цифры на одной:123.32 на другой:123,32 "запятая и точка")
ТАк что придётся ставить себетакую операционку ну настройки(например имя компании "обычное имя" и "имя с кавычками")
PM MAIL ICQ   Вверх
jonie
Дата 21.5.2008, 21:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 5613
Регистрация: 21.8.2005
Где: Владимир

Репутация: 15
Всего: 118



а я сегодня столкнулся с ограниченим свободы в win xp sp2 и выше в плане DCOM.... (притом что возникали ошибки очень похожие на пробой памяти) хрен найдешь в чем баг, в общем.
да дофига че может быть)


--------------------
Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет...
PM MAIL Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0555 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.