Создайте приложение Win32 в C++Builder XE5

В более старой версии Borland C++Builder вы использовали консольный мастер для запуска программы Win32. Это теперь ушло от XE5! Как мне начать??

1 ответ

Мастер, который вы ищете, находится по адресу:

Файл> Создать> Другое... > Проекты C++Builder> Консольное приложение

Однако диалоговое окно мастера было прервано после XE2 и до сих пор не исправлено в последней версии (XE7 на момент написания этой статьи).

  1. В диалоговом окне есть раскрывающийся список для выбора "Target Framework". Если для этого параметра установлено значение "Нет", вы можете получить "неразрешенные внешние" ошибки во время соединения. Поэтому вам, возможно, придется выбрать либо "Библиотеку визуальных компонентов", либо "FireMonkey".

  2. Диалог имеет флажок "Консольное приложение", который установлен по умолчанию и отключен от взаимодействия с пользователем.

    Скриншот

    Таким образом, вы можете создать только консольное приложение, которое использует main() точка входа, а не приложение Win32, которое использует WinMain() точка входа. К счастью, в реестре есть обходной путь:

    HKEY_CURRENT_USER\Software\Embarcadero\BDS\<version>\Repository\New Console Application
    
    (REG_SZ) "ConsoleApp" = "True" or "False"
    

    Задавать "ConsoleApp" в "True" или же "False" указать состояние флажка по умолчанию. Установив его на "False", вы можете создать консольное приложение, которое использует WinMain() точка входа.

Кроме того, еще один способ создать приложение Win32 с WinMain() Точка входа - создать новое приложение VCL Forms и удалить сгенерированное по умолчанию MainForm из проекта и удалите любой код, который вы не хотите из сгенерированного по умолчанию WinMain(),

Embarcadero знает об ошибках (я обсуждал это с ними наедине, и они подтвердили, что в коде диалога есть некоторые странности, которые вызывают эту проблему). Я не вижу для них билетов QualityCentral, поэтому я отправил билет QualityPortal.

Мастер консольного приложения RSP-10796 C++ не работает

Надеюсь, они наконец исправятся.

Другие вопросы по тегам