На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! Правила раздела Visual C++ / MFC / WTL (далее Раздела)
1) На Раздел распространяются все Правила Форума.
2) Перед тем, как создать новый топик, убедитесь, что Вы читали Правила создания тем в Разделе.
3) Вопросы, не связанные с программированием (настройки MS Visual Studio, книги, библиотеки и т.д.),
обсуждаются в разделе C/C++: Прочее
4) Вопросы разработки .NET (Windows Form, C++/CLI и т.п.) приложений на Visual C++/C# обсуждаются в разделе .NET.
5) Нарушение Правил может повлечь наказание со стороны модераторов.

Полезные ссылки:
user posted image FAQ Раздела user posted image Обновления для FAQ Раздела user posted image Поиск по Разделу user posted image MSDN Library Online
Модераторы: ElcnU
  
> Не появляется сообщение AfxMessageBox
    Не появляется на экране сообщение AfxMessageBox в моей программе.
    Код:

    ExpandedWrap disabled
      strcpy(sresinfo,"Запись расчётных значений была осуществлена в файл ");
      strcat(sresinfo,sfilenamebrief);
      length = MultiByteToWideChar(1251,0,sresinfo,-1,0,0);
      wides = new wchar_t[length];
      MultiByteToWideChar(1251,0,sresinfo,wides,length);
      AfxMessageBox(wides);
      delete[] wides;



    В отладчике на строке
    ExpandedWrap disabled
      AfxMessageBox(wides);


    программа останавливается, как бы ожидая моего нажатия на кнопку на этот AfxMessageBox. Но AfxMessageBox почему-то не появляется на экране.

    В чём причина этого?
      Цитата erslgoeirjh @

      программа останавливается, как бы ожидая моего нажатия на кнопку на этот AfxMessageBox. Но AfxMessageBox почему-то не появляется на экране.


      Скорее всего, потому что MultiByteToWideChar не добавляет '\0' в конец строки. Сделай
      ExpandedWrap disabled
        wides = new wchar_t[length + 1];
        .....
        MultiByteToWideChar(....)
        wides[length] = 0;
        AfxMessageBox(wides);


      либо, возможно, length = MultiByteToWideChar(1251,0,sresinfo,-1,0,0) + 1;
      0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
      0 пользователей:


      Рейтинг@Mail.ru
      [ Script execution time: 0,0180 ]   [ 17 queries used ]   [ Generated: 16.04.24, 16:44 GMT ]