Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Visual C++/MFC/WTL > множество проблемм со строковыми типами |
Автор: P111GR1M 5.4.2007, 19:25 | ||||
Здраствуйте! Программирую на VC++2005 Возникло множество проблем со строковыми типами в связи с переходом с VC++2003
Еще вот: '_access' : cannot convert parameter 1 from 'LPCTSTR' to 'const char *'
Помогите, просто руки опускаются |
Автор: Earnest 5.4.2007, 19:37 |
Видимо у тебя проект теперь в Юникоде. А текст в файле нет... Проверь настройки проекта (General->Character Set)и убери Юникод. |
Автор: P111GR1M 5.4.2007, 19:50 |
Earnest, не помогло ![]() |
Автор: Earnest 5.4.2007, 20:01 |
И этому тоже? Да не может быть... А ты после изменений свойств перестроил проект заново? |
Автор: P111GR1M 6.4.2007, 17:41 | ||
Этому помогло, спасибо |
Автор: Earnest 6.4.2007, 17:54 |
Если ошибка при чтении файла осталась, то придется дебажить: пройди по шагам и посмотри откуда она. |
Автор: byNet 12.2.2008, 17:33 |
мне лично помогло, огромное спасибо |
Автор: Miyka 25.4.2009, 12:02 | ||
Ап. Ибо у меня пишет error C2664: 'MyBMP::Draw' : cannot convert parameter 1 from 'CDC *' to 'CDC' Проект MFC. Ошибка ссылается на
Не могу понять что происходит. Пробовал Not set, Unicode и Multi-byte. Не помогает. |
Автор: Albor 25.4.2009, 13:51 |
Нет, ни чего не поможет! Компилятор не знает как можно использовать указатель вместо объекта. Это уж исправьте сами. |
Автор: Miyka 25.4.2009, 14:34 |
Но как так то? Вот программа у соседа и тот же код запускается. Может это вечный бой Vista vs XP? Но если нет то в чем еще может быть проблема или я совсем нубос? |
Автор: Lazin 25.4.2009, 15:26 | ||
совсем ![]() |
Автор: Miyka 25.4.2009, 15:29 |
О да, все кардинально изменилось: error C2664: 'MyBMP::Draw' : cannot convert parameter 1 from 'CDC' to 'CDC *' может еще есть варианты? З.Ы. Lazin согласен, но не столько... хотя не знаю) |
Автор: Lazin 25.4.2009, 16:37 |
Сейчас неудачное положение звезд, у меня не получается прозреть реализацию MyBMP в твоем исходнике ![]() |
Автор: Albor 25.4.2009, 21:57 |
Данная строчка выглядит странновато: получается что класс вида обращается к объекту документа, чтобы тот нарисовался сам. И мне интересно, почему же компилятору не нравится ни то ни другое. |
Автор: Miyka 25.4.2009, 23:17 | ||
Albor, код должен нарисовать квадратик 100 на 100 серого цвета.
Это в сср файле моего класса. может я что то где то не объявил, но блина у соседа работает. ![]() |
Автор: Albor 26.4.2009, 06:37 |
Да вроде всё правильно, функция ждёт указатель. Проверь ещё в заголовочном файле MyBMP.h ![]() |
Автор: Miyka 26.4.2009, 11:02 | ||||
Albor, я с тобой согласен, потому что есть проблема в .h файле и когда объявляю фию таким образом:
ругается, говорит что error C2664: 'MyBMP::Draw' : cannot convert parameter 1 from 'CDC' to 'CDC *', а если объявить вот так, как у соседа:
пишет другую ошибку error LNK2019: unresolved external symbol "public: int __thiscall MyBMP::Draw(class CDC *,struct tagRECT *)" (?Draw@MyBMP@@QAEHPAVCDC@@PAUtagRECT@@@Z) referenced in function "public: virtual void __thiscall CiOpenView::OnDraw(class CDC *)" (?OnDraw@CiOpenView@@UAEXPAVCDC@@@Z) что для меня набор слов |
Автор: Albor 27.4.2009, 07:03 |
Второй прототип должен быть в h файле. Попробуй сделать Rebuild All, бывает помогает. |