Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Visual C++/MFC/WTL > Переход на Visual Studio 2005 |
Автор: Bibigon 30.4.2006, 18:25 |
Начал писать проект на MFC в VS 6 теперь вот хочу перейти на VS 2005. Я вижу что классы форм, созданные в VS 6 при переходе на 2005 надо переделывать. Есть ли возможность, не переделывая полностью проект заново, перейти на 2005? |
Автор: nikitao 30.4.2006, 19:47 |
Но это все же лучше,чем ничего ![]() |
Автор: Любитель 30.4.2006, 20:17 | ||||
Просто здесь используется нестандартное расширение именно Visual C++. Пишем максимум близко к стандарту - изменений понадобится меньше. |
Автор: DeadSoul 30.4.2006, 21:05 |
Любитель, а на 6-ой студии нельзя было писать по-другому![]() Когда переходили с 7-ки(у которой есть настройка "использовать данное расширение") на 8-ку 80% времени ушло именно на эти for-ы |
Автор: Bibigon 30.4.2006, 22:32 |
Проблема в том, что готовый проект открывается нормально и компилируется, но если я пытаюсь изменить уже существующий класс диалогового окна, этот класс не виден. Может кто нибудь знает как работать с MFC в VS8 как будто это VS6? Что изменить в настройках проекта? Или где? |
Автор: Любитель 3.5.2006, 13:16 |
Bibigon, что значит не видит? В Class View он есть? DeadSoul, а что в 6-ке по нормальному не арботает (с двумя объявлениями) я так честно сказать, уже и не помню... |
Автор: DeadSoul 3.5.2006, 22:26 | ||
В силу глючности компилятора ![]() |
Автор: LPNcom 4.5.2006, 17:25 |
У меня в VS2005 не работают вот такие весчи 1. AfxMessageBox("Hi еврибади",MB_OK,NULL); Вместо строки в ковычках глотает только CString строку. ![]() 2. CString Tempo; Tempo.Format("%u",12345); Format нихатит работать, пришлось извращаться ![]() Пару часов прошло как VS2005 поставил, а уже чуть клаву не сломал. Бесит на таких вещах стопориться. ![]() Сейчас вот пытаюсь запустить функцию MCIWndCreate, ошибка : fatal error LNK1120: 1 unresolved externals хз чо ей надо,) Заголовочный файл на месте. |
Автор: DeadSoul 4.5.2006, 20:35 | ||||||
В настройках случайно юникод не стоит?
А так:
|
Автор: LPNcom 4.5.2006, 21:43 |
Неа, Format один фиг не работает) error C2664: 'void ATL::CStringT::Format(const wchar_t *,...)' : cannot convert parameter 1 from 'const char [3]' to 'const wchar_t *' with [ BaseType=wchar_t, StringTraits=StrTraitMFC_DLL ] Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast А где в настройках кодировку на юникод поменять не подскажешь? |
Автор: DeadSoul 4.5.2006, 21:54 | ||
А ну все понятно:
Добавлено @ 21:56 Project -> Properties -> Configuration Properties -> General -> Character Set |
Автор: LPNcom 4.5.2006, 22:19 |
Уряя ![]() Спасибо ![]() ![]() |
Автор: Pchelovod 5.5.2006, 14:02 |
Извините за оффтоп, но есть вопрос с VC++ 2005. Перешёл на него с Delphi 7 и разбираюсь с огромным трудом. Сделал MFC Application. В мастере указал Use Unicode Libraries. Стал делать простенькую программу. Возникла ситуация, описанная выше. НО! Если отключить юникод, то перестаёт работать XP Manifest. Конечно не фатально, но всё же интересно в чём проблема? |
Автор: cozzzy 5.5.2006, 14:22 | ||
Что значит "не работает манифест" и почему я не знаю Но убрать поодержку юникода - не лучшее решение. Достаточно перед строками ставить "L"
|
Автор: LPNcom 5.5.2006, 14:43 |
А если нужно передать указатель на строку то как быть Раньше я так делал CString Path; ... PlayFile(Path); // void PlayFile(void*); |
Автор: cozzzy 5.5.2006, 15:30 |
Использовать:
|
Автор: LPNcom 5.5.2006, 15:43 |
Про первое и последнее не понял, покажи пример ПО поводу LPWSTR, если про это =) CString Path; ... PlayFile((LPWSTR)Path.GetBuffer()); то так тож не работает Непонятно как получить из CString обычную строчку (ANSI) |
Автор: cozzzy 5.5.2006, 16:14 | ||||||
1.
2.
Добавлено @ 16:16 Похоже, ты хочешь именно CString использовать? Поидее должно работать
если нет, то объявляй явно CStringW |
Автор: LPNcom 7.5.2006, 22:12 | ||
Заменил содержимое манифеста этим + вместо XXXXXXXXXXXXXXXXXXXXXXXXXXXX вписать имя своего приложения
|