Сегодня, как было обещано ранее, я расскажу вам страшную тайну, как при помощи Visual C++ Express собирать полноценные Win32 приложения.

На самом деле, признаюсь честно, это не такой уж и большой секрет. На сайте Microsoft есть даже посвященная этому страничка. Вот только найти ее не совсем просто. А находится она здесь.

Для тех, кто не очень дружен с английским, расскажу вкратце, что нужно сделать.

  1. Качаем отсюда Platform SDK, устанавливаем его.
  2. В меню Tools выбираем пункт Options. В появившемся диалоге, открываем ветку Projects and Solutions и выбираем VC++ Directories. В соответствующие секции добавляем следующие пути:

    Executable files: C:\Program Files\Microsoft SDK\Bin

    Include files: C:\Program Files\Microsoft SDK\include

    Library files: C:\Program Files\Microsoft SDK\lib

    Естественно, если вы установили PSDK в другое место, пути должны быть другими.

  3. Далее, находим на диске файл corewin_express.vsprops, находящийся в папке %VSINSTALLDIR%\VC\VCProjectDefaults и меняем строку

    AdditionalDependencies=»kernel32.lib» на

    AdditionalDependencies=»kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib»

  4. В файле default.js , находящемся в %VSINSTALLDIR%\VC \VCWizards\AppWiz\Generic\Application\scripts\1033
    комментируем две строки.

    LinkTool.AdditionalDependencies = »kernel32.lib $(NoInherit)»;

    вот так:

    // LinkTool.AdditionalDependencies = »kernel32.lib $(NoInherit)»;

  5. В файле AppSettings.htm, лежащем в %VSINSTALLDIR%\VC \VCWizards\AppWiz\Generic\Application\html\1033 необходимо закомментировать строки 441-444 вот так:

    //WIN_APP.disabled = true;
    //WIN_APP_LABEL.disabled = true;
    //DLL_APP.disabled = true;
    //DLL_APP_LABEL.disabled = true;

Теперь заходим File->New->Project. Выбираем Win32 Console Application. В появившемся диалоге выбираем Application Settings и видим, что у нас теперь появилась возможность создавать не только консольные приложения, но и полноценные Windows-программы, а также динамические и статические библиотеки.

Умельцы с Codeproject.com подружили Visual C++ Express с библиотекой WTL. К сожалению, полноценная работа с MFC и ATL в данной среде невозможна.

В следующей статье цикла я расскажу вам, как обойти отсутствие в Visual C++ Express встроенного редактора ресурсов. Есть два пути… но о них вы узнаете позже ;) .