Поделиться через


Практическое руководство. Компиляция кода MFC и ATL с помощью параметра /clr

В этом разделе рассматриваются способы компиляции программ MFC и ATL для среды CLR.

Компиляция исполняемого MFC-файла или обычной библиотеки DLL с помощью параметра /clr

  1. В Обозревателе решений щелкните правой кнопкой мыши проект и выберите пункт Свойства.

  2. В диалоговом окне Свойства проекта разверните узел Свойства конфигурации и выберите пункт Общие. Справа, в области Значения по умолчанию для проекта установите для параметра Поддержка общеязыковой среды выполнения (CLR) значение Поддержка общеязыковой среды выполнения (/clr).

    Убедитесь, что в этой же области для параметра Использование MFC установлено значение Использовать MFC в общей DLL.

  3. В разделе Свойства конфигурации разверните узел C/C++ и выберите пункт Общие. Убедитесь, что для параметра Формат отладочной информации установлено значение База данных программы (/Zi) (не /ZI).

  4. Выберите узел Создание кода. Установите параметр Включить минимальное перестроение в значение Нет (/Gm-). Установите параметр Основные проверки времени выполнения в значение По умолчанию.

  5. В разделе Свойства конфигурации выберите пункт C/C++, а затем Создание кода. Убедитесь, что для параметра Библиотека времени выполнения установлено значение Многопоточная DLL с возможностью отладки (/MDd) или Многопоточная DLL (/MD).

  6. Добавьте в файл Stdafx.h следующую строку.

    #using <System.Windows.Forms.dll>
    

Компиляция библиотеки DLL расширения MFC с помощью параметра /clr

  1. Выполните действия, описанные в разделе "Компиляция исполняемого MFC-файла или обычной библиотеки DLL с помощью параметра /clr".

  2. В разделе Свойства конфигурации разверните узел C/C++ и выберите пункт Предварительно скомпилированные заголовки. Задайте для параметра Создавать или использовать предварительно скомпилированный заголовочный файл значение Не использовать предварительно скомпилированные заголовки.

    Можно также щелкнуть правой кнопкой мыши файл Stdafx.cpp в обозревателе решений и выбрать пункт Свойства. В разделе Свойства конфигурации разверните узел C/C++ и выберите пункт Общие. Задайте для параметра Компилировать с поддержкой CLR-среды значение Нет поддержки CLR-среды.

  3. Для файла, содержащего функцию DllMain и все, что она вызывает, щелкните его правой кнопкой мыши в обозревателе решений и выберите пункт Свойства. В разделе Свойства конфигурации разверните узел C/C++ и выберите пункт Общие. Справа, в области Значения по умолчанию для проекта установите для параметра Компилировать с поддержкой общеязыковой среды выполнения (CLR) значение Нет поддержки общеязыковой среды выполнения.

Компиляция исполняемого файла ATL с помощью параметра /clr

  1. В обозревателе решений щелкните правой кнопкой мыши проект и выберите пункт Свойства.

  2. В диалоговом окне Свойства проекта разверните узел Свойства конфигурации и выберите пункт Общие. Справа, в области Значения по умолчанию для проекта установите для параметра Поддержка общеязыковой среды выполнения (CLR) значение Поддержка общеязыковой среды выполнения (/clr).

  3. В разделе Свойства конфигурации разверните узел C/C++ и выберите пункт Общие. Убедитесь, что для параметра Формат отладочной информации установлено значение База данных программы (/Zi) (не /ZI).

  4. Выберите узел Создание кода. Установите параметр Включить минимальное перестроение в значение Нет (/Gm-). Установите параметр Основные проверки времени выполнения в значение По умолчанию.

  5. В разделе Свойства конфигурации выберите пункт C/C++, а затем Создание кода. Убедитесь, что для параметра Библиотека времени выполнения установлено значение Многопоточная DLL с возможностью отладки (/MDd) или Многопоточная DLL (/MD).

  6. Щелкните правой кнопкой мыши имя каждого файла, созданного с помощью компилятора MIDL (файлы языка C), в обозревателе решений и выберите пункт Свойства. В разделе Свойства конфигурации разверните узел C/C++ и выберите пункт Общие. Задайте для параметра Компилировать с поддержкой CLR-среды значение Нет поддержки CLR-среды.

Компиляция библиотеки DLL ATL с помощью параметра /clr

  1. Выполните действия, описанные в разделе "Компиляция исполняемого файла ATL с помощью параметра /clr".

  2. В разделе Свойства конфигурации разверните узел C/C++ и выберите пункт Предварительно скомпилированные заголовки. Задайте для параметра Создавать или использовать предварительно скомпилированный заголовочный файл значение Не использовать предварительно скомпилированные заголовки.

    Можно также щелкнуть правой кнопкой мыши файл Stdafx.cpp в обозревателе решений и выбрать пункт Свойства. В разделе Свойства конфигурации разверните узел C/C++ и выберите пункт Общие. Задайте для параметра Компилировать с поддержкой CLR-среды значение Нет поддержки CLR-среды.

  3. Для файла, содержащего функцию DllMain и все, что она вызывает, щелкните его правой кнопкой мыши в обозревателе решений и выберите пункт Свойства. В разделе Свойства конфигурации разверните узел C/C++ и выберите пункт Общие. Справа, в области Значения по умолчанию для проекта установите для параметра Компилировать с поддержкой общеязыковой среды выполнения (CLR) значение Нет поддержки общеязыковой среды выполнения.

См. также

Основные понятия

Смешанные (собственные и управляемые) сборки