Код ошибки Wix 319 (параметр -out)

Я создаю установщик веб-приложения (.Net). Моя версия Wix - 3.10, и я использую VS2013.

Я видел, что у некоторых людей тоже была эта проблема, но ни один из их ответов мне не помог.

Я попытался выполнить эти шаги, у меня был другой, до этого код выхода 9009 , но я не могу обойти эту ошибку 319.

На вкладке «События сборки» у меня есть «Командная строка события перед сборкой». Вот такой код:

"$(WIX)bin\heat.exe" dir "$(vm4heat)" -cg vm4heat -gg -scom -sreg -sfrag -srd -out "$(ProjectDir)\FilesFragment.wxs"

Сообщение об ошибке довольно простое, похоже, мне не хватает пути для -o или -out. У меня нет -o, значит, это должен быть -out. Но у меня есть путь туда. Я пробовал кучу разных путей, путь к папке, путь к файлу, косую черту, обратную косую черту, двойную обратную косую черту, с переменной, без переменной, переписал путь, потому что увидел, что двойные кавычки выглядят странно. Ничего не помогло. Я видел несколько ответов, связанных с обратной косой чертой и цитатой, экранированием, я не думаю, что у меня есть эта проблема.

Пожалуйста, порекомендуйте.

Спасибо

ОБНОВИТЬ

Я использовал sysdm.cpl, как в видео, чтобы определить переменную для "dir".

Выглядят они примерно так:

имя переменной: vm4heat

Значение переменной: c: \ Work \ Projects \ ToWix \ vmUpgraded \

(это расположение решения, внутри которого находится веб-приложение)

В «Командной строке события перед сборкой» я вижу:

Макрос: ProjectDir

Значение: c: \ Work \ Projects \ ToWix \ vmUpgraded \ VM.Wix

(это расположение проекта Wix внутри решения)

Переменная WIX, которую я нашел в sysdm.cpl

имя переменной: WIX

Значение переменной: C: \ Program Files (x86) \ WiX Toolset v3.10 \

ОБНОВЛЕНИЕ 2

------ Сборка началась: Проект: VM.Wix, Конфигурация: Выпуск x86 ------ "c: \ Program Files (x86) \ WiX Toolset v3.10 \ bin \ heat.exe" dir "c : \ Work \ Projects \ ToWix \ vmUpgraded \ "-cg vm4heat -gg -scom -sreg -sfrag -srd -out" c: \ Work \ Projects \ ToWix \ vmUpgraded \ VM.Wix \ Frags.wxs "heat.exe ( 0,0): ошибка HEAT0319: параметр «-out» или «-o» должен указывать путь к файлу. C: \ Program Files (x86) \ MSBuild \ Microsoft \ WiX \ v3.x \ wix2010.targets (816,5): ошибка MSB3073: команда "" c: \ Program Files (x86) \ WiX Toolset v3.10 \ bin \ heat.exe "dir" c: \ Work \ Projects \ ToWix \ vmUpgraded \ "-cg vm4heat -gg -scom -sreg -sfrag -srd -out" c: \ Work \ Projects \ ToWix \ vmUpgraded \ VM.Wix \ Frags.wxs "" завершился с кодом 319. Завершено построение проекта "VM.Wix.wixproj" - НЕ ПРОЙДЕНО.

========== Сборка: 0 успешных или актуальных, 1 неудачных, 0 пропущенных ==========


person Ash    schedule 22.09.2016    source источник
comment
Не могли бы вы опубликовать, как определены все используемые вами переменные? Вывод тепловой ошибки иногда неверен и выкидывает все плохое на параметр -out :-)   -  person Mischo5500    schedule 22.09.2016
comment
@ Mischo5500 Я добавил дополнительную информацию   -  person Ash    schedule 22.09.2016
comment
Если вы укажете полный путь вместо переменных, проблема не исчезнет? Я попытался предоставить полные пути к моему решению для моего компьютера, и нагрев не вызывает ошибок.   -  person Mischo5500    schedule 22.09.2016
comment
@ Mischo5500 пробовал. То же самое. Ошибка 319. Я подумываю создать файл XML вручную. В сети всего 1200 файлов ...   -  person Ash    schedule 22.09.2016
comment
Не могли бы вы разместить тепловую мощность в окне вывода VS? Должен быть точный вывод, как он называется, что-то вроде ------ Build started: Project: SetupProject1, Configuration: Debug x86 ------ "C:\Program Files (x86)\WiX Toolset v3.10\bin\heat.exe" dir ... Windows Installer XML Toolset Toolset Harvester version 3.10.3.3007 Copyright (c) .NET Foundation and contributors. All rights reserved.   -  person Mischo5500    schedule 22.09.2016
comment
@ Mischo5500 готово. Помогла бы эта ошибка MSB3073?   -  person Ash    schedule 22.09.2016


Ответы (1)


Хорошо, мне наконец удалось воспроизвести вашу проблему. Изменение

variable name: vm4heat
Variable value: c:\Work\Projects\ToWix\vmUpgraded\

до c:\Work\Projects\ToWix\vmUpgraded сработало (обратите внимание на отсутствие обратной косой черты). Я думаю, что VS разрешил \" как ", используя \ в качестве escape-символа. Кстати, как я сказал в первом комментарии, вы можете видеть, что тепло выбрасывает все на параметр -out :-D

person Mischo5500    schedule 22.09.2016
comment
МОЙ БОГ. Большое вам спасибо, вы не представляете, сколько времени я потратил на это. Хотя это так странно. Юзабилити. Или обработка ошибок, или назовите как хотите. Сообщение об ошибке совсем не помогло. Спасибо еще раз - person Ash; 22.09.2016