У меня есть решение с 2 проектами:
Я хотел бы добавить событие постсборки к проекту Установки WiX выполнить пакетный файл и передать его параметр командной строки номера версии блока Моего Приложения. Код может выглядеть примерно так:
CALL MyBatchFile.bat "$(fileVersion.ProductVersion($(var.My Application.TargetPath)))"
Но это приводит к следующей ошибке:
Необработанное выражение Exception:The" "".My Приложение" не может быть оценено. Метод 'Система. Строка. Мое Применение', не найденное. C:\My Application\My Application Setup\My Application Setup.wixproj
Ошибка: выражение" "".My Приложение" не может быть оценено. Метод 'Система. Строка. Мое Применение', не найденное. C:\My Application\My Application Setup\My Application Setup.wixproj
Я хотел бы смочь передать "1.2.54" MyBatchFile.bat так или иначе.
В файле проекта Wix ( *. Wixproj
) переопределите цель AfterBuild
для вызова командного файла:
<Target Name="AfterBuild">
<!-- Get "My Application" assembly version -->
<GetAssemblyIdentity AssemblyFiles="../my_assembly_dir/MyAssembly.dll">
<Output TaskParameter="Assemblies" ItemName="AssemblyIdentity"/>
</GetAssemblyIdentity>
<Exec Command="MyBatchFile.bat %(AssemblyIdentity.Version)"/>
</Target>