На главную Наши проекты:
Журнал   ·   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
  
> Не компилируется Release .exe-файл
    У меня есть решение MySolution в виде диалогового интерфейсного окна, которое я откомпилировал и создал Debug .exe-файл. Этот файл нормально запускается как из среды разработки Visual Studio 2012, так и самостоятельно. Решение MySolution делится на проекты MyProject1, MyProject2, ..., MyProjectN.

    Но я решил на основе этого решения создать также и Release exe.-файл. Для этого я в окне среды разработки в Отладка — Свойства MySolution — Свойства конфигурации поставил "Активная (Release)". После этого я перестроил моё решение.

    В результате у меня высветились ошибки:
    1) в различных .h-файлах и .cpp-файлах появились ошибки:

    Цитата
    error C1083: Не удается открыть файл включение:
    MyProject1\file1.h

    error C1083: Не удается открыть файл включение:
    MyProject2\file2.h

    ...

    error C1083: Не удается открыть файл включение:
    MyProjectN\fileN.h



    2) в файле afxv_w32.h:

    Цитата
    error C1189: #error: WINDOWS.H already included. MFC apps must not #include <windows.h>



    --это в файле afxv_w32.h в строке:

    ExpandedWrap disabled
      #ifdef _WINDOWS_
      #error WINDOWS.H already included. MFC apps must not #include <windows.h>
      #endif



    Что это означает? Как исправить ошибку--как сделать так, чтобы Release .exe-файл компилировался и собирался?
      Самый надёжный способ - скопировать свойства Debug в Release, а потом уже настраивать нужные вам оптимизации/убирать излишества.
        Цитата erslgoeirjh @
        В результате у меня высветились ошибки:
        1) в различных .h-файлах и .cpp-файлах появились ошибки:


        Скорее всего, у тебя в debug-версии какие-то файлы исключены из компиляции. Проверь для тех cpp-файлов, которые не компируются, свойство Excluded from Build, в debug
          У меня возникла другая проблема: решение, которое благополучно компилировалось, собиралось, запускалось и выполнялось в Debug-версии, при линковке (после компиляции) в Release-версии вдруг стало выдавать ошибку:

          Цитата
          error LNK2001: неразрешенный внешний символ "_main" MSVCRT.lib (crtexe.obj)



          Что это означает? Как сделать так, чтобы решение собиралось (линковалось) в Release-версии?

          Я работаю в Visual Studio 2012.
          Сообщение отредактировано: erslgoeirjh -
            Покажи, как у тебя функция main() объявлена
            0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
            0 пользователей:


            Рейтинг@Mail.ru
            [ Script execution time: 0,0213 ]   [ 16 queries used ]   [ Generated: 28.03.24, 19:51 GMT ]