Поиск:

Ответ в темуСоздание новой темы Создание опроса
> множество проблемм со строковыми типами, cannot convert parameter 1 from LPCTSTR 
:(
    Опции темы
P111GR1M
Дата 5.4.2007, 19:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Здраствуйте! Программирую на VC++2005
Возникло множество проблем со строковыми типами в связи с переходом с VC++2003
Код
try
{
  CStdioFile file( _T("c:\\test.txt"), CFile::modeRead || CFile::typeText );
  CString buf;
  file.ReadString( buf );  // здесь вызывается исключение и пишет "неизвесная ошибка". Почему??
  AfxMessageBox( buf );
  file.Close();
}
catch( CFileException* pe )
{
  pe->ReportError();
}

Еще вот:  '_access' : cannot convert parameter 1 from 'LPCTSTR' to 'const char *'
Код
public:
    static BOOL FileExists(LPCTSTR lpszFileName) 
    {
        return (0 == (_access(lpszFileName, 4)));
    }


Помогите, просто руки опускаются
PM MAIL   Вверх
Earnest
Дата 5.4.2007, 19:37 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



Видимо у тебя проект теперь в Юникоде. А текст в файле нет... Проверь настройки проекта (General->Character Set)и убери Юникод.


--------------------
...
PM   Вверх
P111GR1M
Дата 5.4.2007, 19:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Earnest, не помогло  smile 
PM MAIL   Вверх
Earnest
Дата 5.4.2007, 20:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



Цитата(P111GR1M @  5.4.2007,  20:25 Найти цитируемый пост)
cannot convert parameter 1 from 'LPCTSTR' to 'const char *'

И этому тоже? Да не может быть... 
А ты после изменений свойств перестроил проект заново?


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


Новичок



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

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



Цитата

Цитата(P111GR1M @  5.4.2007,  20:25 )
cannot convert parameter 1 from 'LPCTSTR' to 'const char *'


И этому тоже? Да не может быть... 

Этому помогло, спасибо
PM MAIL   Вверх
Earnest
Дата 6.4.2007, 17:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



Если ошибка при чтении файла осталась, то придется дебажить: пройди по шагам и посмотри откуда она.


--------------------
...
PM   Вверх
byNet
Дата 12.2.2008, 17:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



мне лично помогло, огромное спасибо
PM MAIL   Вверх
Miyka
Дата 25.4.2009, 12:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Ап. Ибо у меня пишет 
error C2664: 'MyBMP::Draw' : cannot convert parameter 1 from 'CDC *' to 'CDC'

Проект MFC. Ошибка ссылается на 
Код

void CiOpenView::OnDraw(CDC *pDC)
{
    CiOpenDoc* pDoc = GetDocument();
    ASSERT_VALID(pDoc);
    if (!pDoc) 
        return;

    // TODO: add draw code for native data here
    pDoc->ozbmp.Draw(pDC,NULL); <------ сюда
}


Не могу понять что происходит. Пробовал Not set, Unicode и Multi-byte. Не помогает.
PM MAIL ICQ   Вверх
Albor
Дата 25.4.2009, 13:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Цитата(Miyka @  25.4.2009,  12:02 Найти цитируемый пост)
cannot convert parameter 1 from 'CDC *' to 'CDC'

Нет, ни чего не поможет! Компилятор не знает как можно использовать указатель вместо объекта. Это уж исправьте сами.

PM MAIL ICQ   Вверх
Miyka
Дата 25.4.2009, 14:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Но как так то? Вот программа у соседа и тот же код запускается. 
Может это вечный бой Vista vs XP? Но если нет то в чем еще может быть проблема или я совсем нубос?
PM MAIL ICQ   Вверх
Lazin
Дата 25.4.2009, 15:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3820
Регистрация: 11.12.2006
Где: paranoid oil empi re

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



Код

pDoc->ozbmp.Draw(*pDC,NULL);


Цитата(Miyka @  25.4.2009,  14:34 Найти цитируемый пост)
Но если нет то в чем еще может быть проблема или я совсем нубос? 

совсем smile 
PM MAIL Skype GTalk   Вверх
Miyka
Дата 25.4.2009, 15:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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




О да, все кардинально изменилось:
error C2664: 'MyBMP::Draw' : cannot convert parameter 1 from 'CDC' to 'CDC *'
может еще есть варианты? 

З.Ы. Lazin согласен, но не столько... хотя не знаю)

Это сообщение отредактировал(а) Miyka - 25.4.2009, 15:31
PM MAIL ICQ   Вверх
Lazin
Дата 25.4.2009, 16:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3820
Регистрация: 11.12.2006
Где: paranoid oil empi re

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



Сейчас неудачное положение звезд, у меня не получается прозреть реализацию MyBMP в твоем исходнике smile 
PM MAIL Skype GTalk   Вверх
Albor
Дата 25.4.2009, 21:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Цитата(Miyka @  25.4.2009,  12:02 Найти цитируемый пост)
pDoc->ozbmp.Draw(pDC,NULL); <------ сюда

Данная строчка выглядит странновато: получается что класс вида обращается к объекту документа, чтобы тот нарисовался сам. 

Цитата(Lazin @  25.4.2009,  16:37 Найти цитируемый пост)
прозреть реализацию MyBMP в твоем исходнике
 И мне интересно, почему же компилятору не нравится ни то ни другое.

PM MAIL ICQ   Вверх
Miyka
Дата 25.4.2009, 23:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Albor, код должен нарисовать квадратик 100 на 100 серого цвета.

Код

BOOL Draw(CDC *pDC, RECT *pRect)
{
    pDC->FillSolidRect(0,0,100,100,0xFF0000);
    return true;
}



Это в сср файле моего класса.

может я что то где то не объявил, но блина у соседа работает.  smile 
PM MAIL ICQ   Вверх
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Visual C++/MFC/WTL | Следующая тема »


 




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


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

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