Правка исходников ATL
От: swamp Россия  
Дата: 12.07.03 12:38
Оценка:
Понадобилось внести небольшие изменения в исходники ATL (чисто в отладочных целях), однако столкнулся с проблемой: такое впечатление, что они не перекомпилируются. Например:

    _ATL_OBJMAP_ENTRY* pEntry = *ppEntry;
    if (pEntry->pCF != NULL)
       pEntry->pCF->Release();
    pEntry->pCF = NULL;


у меня происходит вылет на строке pEntry->pCF->Release() (соответсвенно в дебагере на ней происходит останов). Пробую закомментарить ее, перекомпилирую, результат тот же — останов на закомментаренной строке. Пробую сместить все на строку вниз, останов происходит на той строке, где раньше была эта строка. Пытаюсь вставить ATLTRACE2("blabla"), нифига не выводит. Из чего делаю вывод, что от того, что я меняю исходник, никакой реакции нет. Что можно сделать?

Делал и Build и Rebuild. Результат одинаковый.
Sincerely yours,
Andrew Simontsev.
Re: Правка исходников ATL
От: Tom Россия http://www.RSDN.ru
Дата: 12.07.03 13:22
Оценка:
S>Делал и Build и Rebuild. Результат одинаковый.
Rebuild All попробуй
... << RSDN@Home 1.1 beta 1 >>
Народная мудрось
всем все никому ничего(с).
Re: Правка исходников ATL
От: Alexey Shirshov Россия http://wise-orm.com
Дата: 13.07.03 07:56
Оценка: :)
Здравствуйте, swamp, Вы писали:

[]

Правкой ATL-ых исходников багу в своем коде не найдешь.
Re[2]: Правка исходников ATL
От: swamp Россия  
Дата: 14.07.03 03:20
Оценка:
Здравствуйте, Alexey Shirshov, Вы писали:

AS>Здравствуйте, swamp, Вы писали:


AS>[]


AS>Правкой ATL-ых исходников багу в своем коде не найдешь.


Под правкой подразумевается преимущественно вставка ATLTRACE...

Кстати, еще одну вещь забыл сказать, почему-то нельзя поставить break-point внутри ATL-ного кода (точнее поставить можно, но на нем он не останавливается и брекпойнт показывается с вопросиком)... Это нормально?
Sincerely yours,
Andrew Simontsev.
Re[3]: Правка исходников ATL
От: folk Россия  
Дата: 14.07.03 04:05
Оценка:
Здравствуйте, swamp, Вы писали:

S>Здравствуйте, Alexey Shirshov, Вы писали:


AS>>Здравствуйте, swamp, Вы писали:


AS>>[]


AS>>Правкой ATL-ых исходников багу в своем коде не найдешь.


S> Под правкой подразумевается преимущественно вставка ATLTRACE...


S> Кстати, еще одну вещь забыл сказать, почему-то нельзя поставить break-point внутри ATL-ного кода (точнее поставить можно, но на нем он не останавливается и брекпойнт показывается с вопросиком)... Это нормально?


Возможно скажу глупость, но вдруг у тебя установлено 2 комплекта ATL, и ты ставишь бряки по одному пути, а компилятор смотрит по другому.
зы Никогда не видел бряк с вопросиком.
На самом деле, люди не читают газеты, они принимают их каждое утро, так же как ванну. ©Маршалл Мак-Льюэн
Re[3]: Правка исходников ATL
От: Alexey Shirshov Россия http://wise-orm.com
Дата: 14.07.03 04:10
Оценка:
Здравствуйте, swamp, Вы писали:

[]

S> Кстати, еще одну вещь забыл сказать, почему-то нельзя поставить break-point внутри ATL-ного кода (точнее поставить можно, но на нем он не останавливается и брекпойнт показывается с вопросиком)... Это нормально?


Нет.

Какую версию ATL ты используешь?
Re[4]: Правка исходников ATL
От: swamp Россия  
Дата: 14.07.03 04:17
Оценка:
Здравствуйте, folk, Вы писали:

S>> Кстати, еще одну вещь забыл сказать, почему-то нельзя поставить break-point внутри ATL-ного кода (точнее поставить можно, но на нем он не останавливается и брекпойнт показывается с вопросиком)... Это нормально?


F>Возможно скажу глупость, но вдруг у тебя установлено 2 комплекта ATL, и ты ставишь бряки по одному пути, а компилятор смотрит по другому.


Хм... Вроде бы одна версия у меня... Та, что с VS.NET 2002 ставится...

F>зы Никогда не видел бряк с вопросиком.


Такое бывает, когда пытаешься отладить релизную версию... Но у меня дебаг, тем более что в моем проекте брекпоинты работают...
Sincerely yours,
Andrew Simontsev.
Re[4]: Правка исходников ATL
От: swamp Россия  
Дата: 14.07.03 04:20
Оценка:
Здравствуйте, Alexey Shirshov, Вы писали:

S>> Кстати, еще одну вещь забыл сказать, почему-то нельзя поставить break-point внутри ATL-ного кода (точнее поставить можно, но на нем он не останавливается и брекпойнт показывается с вопросиком)... Это нормально?


AS>Нет.


AS>Какую версию ATL ты используешь?


Та, что с VS.NET 2002 ставится (т.е седьмую), без аттрибутов...
Sincerely yours,
Andrew Simontsev.
Re[5]: Правка исходников ATL
От: Alexey Shirshov Россия http://wise-orm.com
Дата: 14.07.03 05:24
Оценка:
Здравствуйте, swamp, Вы писали:

[]

S> Та, что с VS.NET 2002 ставится (т.е седьмую), без аттрибутов...


Странно. Я это делал без проблем (правил исходники). Как заголовки так и имплементации (*.inl).
Re: Правка исходников ATL
От: SWW Россия  
Дата: 14.07.03 06:04
Оценка:
S>Понадобилось внести небольшие изменения в исходники ATL (чисто в отладочных целях), однако столкнулся с проблемой: такое впечатление, что они не перекомпилируются.

Мне понадобилась правка функции CWindow::MessageBox() — сделать ее с модификатором const, так как иначе нельзя было сделать ее вызов из константного CWindow-derived класса. Изменения воспринялись после Rebuild All.
Re: Правка исходников ATL
От: kliff Россия http://www.esignal.ru
Дата: 18.07.03 13:13
Оценка:
Здравствуйте, swamp, Вы писали:

S>Понадобилось внести небольшие изменения в исходники ATL (чисто в отладочных целях), однако столкнулся с проблемой: такое впечатление, что они не перекомпилируются. Например:


S>
S>    _ATL_OBJMAP_ENTRY* pEntry = *ppEntry;
S>    if (pEntry->pCF != NULL)
S>       pEntry->pCF->Release();
S>    pEntry->pCF = NULL;
S>


S>у меня происходит вылет на строке pEntry->pCF->Release() (соответсвенно в дебагере на ней происходит останов). Пробую закомментарить ее, перекомпилирую, результат тот же — останов на закомментаренной строке. Пробую сместить все на строку вниз, останов происходит на той строке, где раньше была эта строка. Пытаюсь вставить ATLTRACE2("blabla"), нифига не выводит. Из чего делаю вывод, что от того, что я меняю исходник, никакой реакции нет. Что можно сделать?


S>Делал и Build и Rebuild. Результат одинаковый.


Мужик, после того как изменил файл не включенный в проект его ОБЯЗАТЕЛЬНО надо сохранить на диск. И только потом Rebuild All. А иначе ты его токо в памяти меняешь.
Re[2]: Правка исходников ATL
От: swamp Россия  
Дата: 18.07.03 14:16
Оценка:
Здравствуйте, kliff, Вы писали:

S>>Делал и Build и Rebuild. Результат одинаковый.


K>Мужик, после того как изменил файл не включенный в проект его ОБЯЗАТЕЛЬНО надо сохранить на диск. И только потом Rebuild All. А иначе ты его токо в памяти меняешь.


Студия перед каждой компиляцией все сохраняет.
... << RSDN@Home 1.1 beta 1 >>
Sincerely yours,
Andrew Simontsev.
Re[3]: Правка исходников ATL
От: A_l_e_x_e_y Россия  
Дата: 21.07.03 10:18
Оценка:
Здравствуйте, swamp, Вы писали:

S> Студия перед каждой компиляцией все сохраняет.

Студия сохраняет только файлы, включенные в проект
Re: Правка исходников ATL
От: deviv  
Дата: 21.07.03 10:45
Оценка:
Что происходит, если поставить breakpoint в своем коде (я полагаю это работает, иначе нужно включить debuginfo в опциях проекта) и попробовать протрасировать внутрь какого-нибудь ATL вызова? Должен открыться файл с соответствующем кодом. Проверь где этот файл будет расположен, в том же месте где ты правишь исходники?
WBR,
Влад Волосюк
Re[2]: Правка исходников ATL
От: Аноним  
Дата: 21.07.03 12:36
Оценка:
Здравствуйте, deviv, Вы писали:

D>Что происходит, если поставить breakpoint в своем коде (я полагаю это работает, иначе нужно включить debuginfo в опциях проекта) и попробовать протрасировать внутрь какого-нибудь ATL вызова? Должен открыться файл с соответствующем кодом. Проверь где этот файл будет расположен, в том же месте где ты правишь исходники?



Ну я бы уж лучше посоветовал в том файле, где правишь поставить
#error "Its me"
или
#pragma message("Its me")
После чего запустить полную перекомпиляцию, и посмотреть, сработает оно или нет.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.