Я пытаюсь написать установку Wix # для программы, которая использует Sqlite.
SqlLite имеет библиотеку для x64 и x86.
Я хотел бы включить оба библиотечных файла и установить только соответствующие на пользовательском компьютере.
Я думаю, мне нужно использовать Условие, но я не могу найти хороший пример.
Если я исключаю строку, которая включает версию x86, она работает (на моей машине x64). Попытка включить оба файла вызывает исключение, потому что я включаю два файла для одного и того же местоположения.
Как это сделать?
BR, Anders
var x64SqLite = new Feature("x64SqLite");
var x86SqLite = new Feature("x86SqLite");
var project = new Project(
$"{productWithEnv} {releaseNumber}",
new Dir(
$@"%ProgramFiles%\{companyName}\{productWithEnv}",
new Files(path + @"\*.*",
f => !f.EndsWith(".pdb") && !f.EndsWith(".msi")
),
new Files(x64SqLite, path + @"\x64\SQLite.Interop.dll")
,new Files(x86SqLite, path + @"\x86\SQLite.Interop.dll")
),
new Dir(
$"%ProgramMenu%\\{companyName}\\{productWithEnv}",
new ExeFileShortcut(productWithEnv,
@"[" +
$"%ProgramFiles%\\{companyName}\\{productWithEnv}"
.ToDirID() + "]",
""),
new ExeFileShortcut($"Uninstall {productWithEnv}", "[System64Folder]msiexec.exe",
"/x [ProductCode]"))
)
{
GUID = new Guid(guidString),
OutFileName = $@".\MyProduct{envStringToShow}.{releaseNumber}",
MajorUpgradeStrategy = MajorUpgradeStrategy.Default,
Version = new Version(releaseNumber)
};