Создать установщик wix с пользовательскими действиями
Я создал проект Wix CustomActions для моего установщика wix. Я использую MakeSfxCA.exe для создания CustomActions.XXXX.CA.dll.
Поскольку я ссылаюсь более чем на одну DLL в качестве файла поддержки, ниже я добавил еще 2 новые ссылки на DLL в SupportFile.
<MakeSfxCA
InputCustomActionAssembly="MyRef.CustomActions.xxxx.dll"
TargetCustomActionAssembly="MyRef.CustomActions.xxxx.CA.dll"
UnmanagedProxyAssembly="SfxCA.dll"
ManagedProxyAssembly="someDLLname"
ManagedProxyClass="someCLASSname">
<SupportFile source="Microsoft.Deployment.WindowsInstaller.dll" target=""/>
<SupportFile source="ExistingDLL1.dll" target=""/>
<SupportFile source="ExistingDLL2.dll" target=""/>
<SupportFile source="NewlyAdded1.dll" target=""/>
<SupportFile source="NewlyAdded2.dll" target=""/>
</MakeSfxCA>
Все идет хорошо при создании этого проекта CustomActions и сборке журналов,
Packaging files
1> MyRef.CustomActions.xxxx.dll
1> Microsoft.Deployment.WindowsInstaller.dll
1> ExistingDLL1.dll
1> ExistingDLL2.dll
1> NewlyAdded1.dll
1> NewlyAdded2.dll
1> CustomAction.config
После успешного создания установщика, при установке этого установщика, получить исключение,
System.IO.FileNotFoundException: Could not load file or assembly 'NewlyAdded2, Version=2.0.0.0, Culture=neutral, PublicKeyToken=c34r7789g45367gb' or one of its dependencies. The system cannot find the file specified.
При отладке во время работы установщика этот файл NewlyAdded2.dll не был найден в C:\Windows\Installer\MSI76CD.tmp- . "MSI76CD.tmp-" будет временно создан во время установки. .NET Framework версия всех dll одинакова.