Re[2]: ATL Wizard не хочет добавлять еще одни ATL объект
От: ZORK Россия www.zorkaltsev.com
Дата: 05.10.01 15:24
Оценка:
Здравствуйте VladD2, Вы писали:

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


T>>Есть ATL проект. В нем 2 объекта. Все работало нормально.

T>>Сейчас нужно добавить еще один ATL объект, а Wizard на это выдает сообщение:
T>>"Currently ATL objects may only be added to ATL projects, or certain types of MFC projects (EXE, CONTROL, Regular DLL)"
T>>По какому признаку он это определяет, макрос я что ли какой его любимый махнула? Сравнения с проектом, в который все нормально добавляется ни к чему не привели. ;-( На первый взгляд они очень похожи...

VD>Если проект под сорс-контролем или часть его файлов помечена как тлько для чтения, надо чикаутнуть все файлв (обычно достаточно ресурсов, но...) или снять r/o.


И еще бывает что у ATL Wizard'а крышу срывает, если код был модифицирован руками. Иногда помогает такая манипуляция:
— закрыть проект
— удалить временные файлы [имя проект].ncb и [имя проекта].opt
— открыть проект обратно
— попробовать еще раз добавить ATL-класс

Eсли это не помогает, то тут надо учиться довалять классы вручную. Самое проестое, это

— создать временный ATL проект
— cгенерировать в нем ATL-класс
— перенести из временного проекта в основной проект [класс].cpp и [класс].h
— необходимые части из .idl файла
— перенести [.rgs файл, в основной проект, и добавить его в ресуры
— добавить новый класс в OBJECT_MAP (BEGIN_OBJECT_MAP — END_OBJECT_MAP)

Если не заработает, значит я что-то еще забыл :)

-Zork
Думать надо ...головой :)
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.