Сборка x64 WIX проекта с использованием Visual Studio 2010? - PullRequest
7 голосов
/ 24 ноября 2010

Я не могу заставить VS2010 построить проект WIX для x64 - то есть я могу добавить платформу, но она не собирается.

Шаги для воспроизведения:

  1. Новый проект> XML установщика Windows> Настройка проекта (используйте имя по умолчанию, расположение и т. Д.)
  2. Сборка> Configuration Manager> Платформа активных решений>
  3. Новая платформа: x64
  4. Копировать настройки из: x86
  5. Создание новых платформ проектов: проверено (я тоже пробовал не проверять, не лучше)
  6. OK, чтобы закрыть диалоговое окно New Solution Platform
  7. Вернувшись в Configuration Manager, выберите x64 для платформы
  8. Закрыть диспетчер конфигурации
  9. Повторно открыть диспетчер конфигурации

Результаты: платформа вернулась к x86.

Ожидаемые результаты: платформа по-прежнему установлена ​​на x64.

Я что-то упустил? Я не могу быть единственным человеком, сталкивающимся с этим?

Ответы [ 2 ]

6 голосов
/ 07 декабря 2010

WiX определенно поддерживает x64!У меня возникла та же проблема, и это, кажется, почему-то сумасшедшая проблема, поскольку я также заставил ее работать для другого решения для x86 и x64.Поэтому я сравнил два файла решения и выяснил, что происходит с тем, что не работает.

GlobalSection(ProjectConfigurationPlatforms) = postSolution
    {HERE-IS-STANDING-A-GUID}.Debug|x64.ActiveCfg = Release|x86
    {HERE-IS-STANDING-A-GUID}.Debug|x64.Build.0 = Release|x86
    {HERE-IS-STANDING-A-GUID}.Debug|x86.ActiveCfg = Debug|x86
    {HERE-IS-STANDING-A-GUID}.Debug|x86.Build.0 = Debug|x86
    {HERE-IS-STANDING-A-GUID}.Release|x64.ActiveCfg = Release|x86
    {HERE-IS-STANDING-A-GUID}.Release|x64.Build.0 = Release|x86
    {HERE-IS-STANDING-A-GUID}.Release|x86.ActiveCfg = Release|x86
    {HERE-IS-STANDING-A-GUID}.Release|x86.Build.0 = Release|x86
EndGlobalSection

Это сгенерированный нерабочий.Чтобы все заработало, я заменил первые четыре строки после «=» и немного поиграл с сборкой x86 и x64.Это сработало для меня.

Вот тот же, но рабочий код:

GlobalSection(ProjectConfigurationPlatforms) = postSolution
    {HERE-IS-STANDING-A-GUID}.Debug|x64.ActiveCfg = Debug|x64
    {HERE-IS-STANDING-A-GUID}.Debug|x64.Build.0 = Debug|x64
    {HERE-IS-STANDING-A-GUID}.Debug|x86.ActiveCfg = Debug|x86
    {HERE-IS-STANDING-A-GUID}.Debug|x86.Build.0 = Debug|x86
    {HERE-IS-STANDING-A-GUID}.Release|x64.ActiveCfg = Release|x64
    {HERE-IS-STANDING-A-GUID}.Release|x64.Build.0 = Release|x64
    {HERE-IS-STANDING-A-GUID}.Release|x86.ActiveCfg = Release|x86
    {HERE-IS-STANDING-A-GUID}.Release|x86.Build.0 = Release|x86
EndGlobalSection

Надеюсь, что это работает и для вас

3 голосов
/ 11 июля 2013

У меня была такая же проблема всего несколько минут назад в VS2010. Я решил проблему следующим образом:

  1. Закрыть Visual Studio (возможно, в других случаях)
  2. x64 внезапно исчезла для проектов wix ....
  3. Создайте для проектов wix новую x64 без копирования с других и снимите флажок «Создать конфигурацию решения»
  4. Сохраните решение и снова закройте VS.
  5. Откройте ваш проект снова
  6. Снова выберите x64 для проекта wix. Теперь х64 останется ...

Странно, но работает: -)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...